Boost logo

Geometry :

Subject: [geometry] Proposal: grouping tests according to the directory/logical structure
From: Adam Wulkiewicz (adam.wulkiewicz_at_[hidden])
Date: 2015-05-27 13:39:50


We have many tests at Geometry in a single matrix:
For me it is sometimes hard to quickly find the test I'm looking for.

I propose to group the tests the same way how they're grouped in the
directories structure by naming them accordingly. Each test name would
1. a name (or names) of a logical part of the library taken from the
containing directory (algorithms, strategies, core, etc.)
2. a name of the tested algorithm, class, concept (within, box, etc.)
3. a name of test variant (e.g. areal_areal or multi)

Furthermore I propose to keep the file and directories structure short
(i.e. in many cases the same as they are now) and to specify the names
in Jamfiles.
This can be done by setting the target-name in run/compile/compile-fail
rules, as mentioned here:

The target-name would be created from the directory name,
algorithm/concept name and test variant name separated by underscore, e.g.:
algorithms/area_multi.cpp -> algorithms_area_multi
algorithms/buffer/buffer_point.cpp -> algorithms_buffer_point
algorithms/distance/distance.cpp -> algorithms_distance
algorithms/relational_operations/relate/relate_areal_areal.cpp ->
core/access.cpp -> core_access
geometries/box.cpp -> geometries_box
strategies/andoyer.cpp -> strategies_andoyer
util/range.cpp -> util_range

I also propose to rename some of the files to reflect the new naming
convention, i.e. to always keep test variant identifier at the end (as
on the list above), e.g.:
multi_area.cpp -> area_multi.cpp
point_buffer.cpp -> buffer_point.cpp

Alternatively, sometimes the name of an algorithm could also be ommited
in a file name if it was redundant and clear enough, e.g.:
buffer/point_buffer.cpp -> buffer/point.cpp
however personally I'd prefer keeping the redundant algorithm name. At
least for now. And if we agreed that it should be done this way, do it
in the future (as the next step) consistently for all of the tests.


Geometry list run by mateusz at