Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2026-04-07 08:08:13

0001 // This file is part of the Acts project.
0002 //
0003 // Copyright (C) 2023 CERN for the benefit of the Acts project
0004 //
0005 // This Source Code Form is subject to the terms of the Mozilla Public
0006 // License, v. 2.0. If a copy of the MPL was not distributed with this
0007 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
0008 
0009 #include <boost/test/data/test_case.hpp>
0010 #include <boost/test/unit_test.hpp>
0011 
0012 #include <ActsExamples/Alignment/AlignmentAlgorithm.hpp>
0013 
0014 BOOST_AUTO_TEST_CASE(Single_sensitive_Test) {
0015   Acts::GeometryIdentifier geoId;
0016   geoId.setSensitive(1);
0017   ActsExamples::AlignmentGroup aGroup("test", {geoId});
0018   BOOST_CHECK(aGroup.has(geoId));
0019 
0020   Acts::GeometryIdentifier badId;
0021   badId.setSensitive(2);
0022   BOOST_CHECK(!aGroup.has(badId));
0023 }
0024 
0025 BOOST_AUTO_TEST_CASE(Single_layer_Test) {
0026   Acts::GeometryIdentifier geoId;
0027   geoId.setLayer(1);
0028   ActsExamples::AlignmentGroup aGroup("test", {geoId});
0029   BOOST_CHECK(aGroup.has(geoId));
0030 
0031   Acts::GeometryIdentifier badId;
0032   badId.setLayer(2);
0033   BOOST_CHECK(!aGroup.has(badId));
0034 }
0035 
0036 BOOST_AUTO_TEST_CASE(Single_volume_Test) {
0037   Acts::GeometryIdentifier geoId;
0038   geoId.setVolume(1);
0039   ActsExamples::AlignmentGroup aGroup("test", {geoId});
0040   BOOST_CHECK(aGroup.has(geoId));
0041 
0042   Acts::GeometryIdentifier badId;
0043   badId.setVolume(2);
0044   BOOST_CHECK(!aGroup.has(badId));
0045 }
0046 
0047 BOOST_AUTO_TEST_CASE(Hierarchy_test) {
0048   Acts::GeometryIdentifier geoId;
0049   geoId.setVolume(1);
0050   ActsExamples::AlignmentGroup aGroup("test", {geoId});
0051 
0052   Acts::GeometryIdentifier geoId2;
0053   geoId2.setVolume(1);
0054   geoId2.setLayer(2);
0055   BOOST_CHECK(aGroup.has(geoId2));
0056 
0057   Acts::GeometryIdentifier geoId3;
0058   geoId3.setVolume(1);
0059   geoId3.setLayer(3);
0060   BOOST_CHECK(aGroup.has(geoId3));
0061 }
0062 
0063 BOOST_AUTO_TEST_CASE(Hierarchy_test_2) {
0064   Acts::GeometryIdentifier geoId;
0065   geoId.setVolume(1);
0066   geoId.setLayer(1);
0067   ActsExamples::AlignmentGroup aGroup("test", {geoId});
0068 
0069   Acts::GeometryIdentifier badId;
0070   badId.setVolume(1);
0071   BOOST_CHECK(!aGroup.has(badId));
0072 }
0073 
0074 BOOST_AUTO_TEST_CASE(Multiple_test) {
0075   Acts::GeometryIdentifier geoId1;
0076   geoId1.setVolume(1);
0077   geoId1.setLayer(1);
0078   Acts::GeometryIdentifier geoId2;
0079   geoId2.setVolume(2);
0080   geoId2.setLayer(2);
0081   Acts::GeometryIdentifier geoId3;
0082   geoId3.setVolume(3);
0083   geoId3.setLayer(3);
0084   Acts::GeometryIdentifier geoId4;
0085   geoId4.setVolume(4);
0086   geoId4.setLayer(4);
0087 
0088   ActsExamples::AlignmentGroup aGroup("test", {geoId1, geoId2, geoId3});
0089 
0090   BOOST_CHECK(aGroup.has(geoId1));
0091   BOOST_CHECK(aGroup.has(geoId2));
0092   BOOST_CHECK(aGroup.has(geoId3));
0093   BOOST_CHECK(!aGroup.has(geoId4));
0094 }