![]() |
LArSoft
v10_06_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Base class for objects initializing a geometry. More...
#include "larcorealg/CoreUtils/SearchPathPlusRelative.h"#include "larcorealg/Geometry/GeometryBuilderStandard.h"#include "larcorealg/Geometry/GeometryCore.h"#include "larcorealg/TestUtils/unit_test_base.h"#include "cetlib/search_path.h"#include "fhiclcpp/ParameterSet.h"#include "messagefacility/MessageLogger/MessageLogger.h"#include <iostream>#include <map>#include <memory>#include <string>#include <type_traits>Go to the source code of this file.
Classes | |
| struct | testing::BasicGeometryEnvironmentConfiguration |
| Class holding a configuration for a test environment. More... | |
| class | testing::GeometryTesterEnvironment< ConfigurationClass, ObjectSorter > |
| Environment for a geometry test. More... | |
Namespaces | |
| testing | |
| LArSoft test utilities. | |
Functions | |
| template<typename ObjectSorter > | |
| auto | testing::createSorter (fhicl::ParameterSet const &pset[[maybe_unused]]) |
Base class for objects initializing a geometry.
Provides an environment for easy set up of a Geometry-aware test. Keep in mind that, as much as I could push on flexibility, the channel mapping algorithm must be hard-coded and, if using Boost unit test, the configuration file location must be hard coded too (or you can use the provided configuration).
For an example of usage, see larcore/test/Geometry/geometry_iterator_test.cxx
The standard TesterEnvironment<> class can't handle geo::GeometryCore. The reason is twofold: for once, WireReadout service is not factorized, so we need to choose explicitly the WireReadoutGeom implementation (here this is obtained by a template argument). Another is that GeometryCore both is required and requires WireReadoutGeom to have a complete initialisation. There are ways to overcome the issue at the cost of added complication.
Currently provides:
Definition in file geometry_unit_test_base.h.