1414#include " FWCore/Utilities/interface/EDMException.h"
1515#include " FWCore/Reflection/interface/TypeWithDict.h"
1616
17+ struct ProdTypeA {};
18+ struct ProdTypeB {};
19+
1720typedef std::vector<edm::ProductDescription const *> VCBDP;
1821
1922void apply_gs (edm::ProductSelector const & gs, VCBDP const & allbranches, std::vector<bool >& results) {
@@ -43,7 +46,7 @@ TEST_CASE("test ProductSelector", "[ProductSelector]") {
4346 auto processConfiguration = std::make_shared<edm::ProcessConfiguration>();
4447 processConfiguration->setParameterSetID (dummyProcessPset.id ());
4548
46- edm::TypeWithDict dummyTypeWithDict ;
49+ edm::TypeID dummyTypeID ( typeid (ProdTypeA)) ;
4750 // We pretend to have one module, with two products. The products
4851 // are of the same and, type differ in instance name.
4952 std::set<edm::ParameterSetID> psetsA;
@@ -53,8 +56,8 @@ TEST_CASE("test ProductSelector", "[ProductSelector]") {
5356 modAparams.registerIt ();
5457 psetsA.insert (modAparams.id ());
5558
56- edm::ProductDescription b1 (edm::InEvent, " modA" , " PROD" , " UglyProdTypeA " , " ProdTypeA " , " i1" , dummyTypeWithDict );
57- edm::ProductDescription b2 (edm::InEvent, " modA" , " PROD" , " UglyProdTypeA " , " ProdTypeA " , " i2" , dummyTypeWithDict );
59+ edm::ProductDescription b1 (edm::InEvent, " modA" , " PROD" , " i1" , dummyTypeID );
60+ edm::ProductDescription b2 (edm::InEvent, " modA" , " PROD" , " i2" , dummyTypeID );
5861
5962 // Our second pretend module has only one product, and gives it no
6063 // instance name.
@@ -64,13 +67,13 @@ TEST_CASE("test ProductSelector", "[ProductSelector]") {
6467 modBparams.registerIt ();
6568 psetsB.insert (modBparams.id ());
6669
67- edm::ProductDescription b3 (edm::InEvent, " modB" , " HLT" , " UglyProdTypeB " , " ProdTypeB" , " " , dummyTypeWithDict );
70+ edm::ProductDescription b3 (edm::InEvent, " modB" , " HLT" , " " , edm::TypeID ( typeid ( ProdTypeB)) );
6871
6972 // Our third pretend is like modA, except it hass processName_ of
7073 // "USER"
7174
72- edm::ProductDescription b4 (edm::InEvent, " modA" , " USER" , " UglyProdTypeA " , " ProdTypeA " , " i1" , dummyTypeWithDict );
73- edm::ProductDescription b5 (edm::InEvent, " modA" , " USER" , " UglyProdTypeA " , " ProdTypeA " , " i2" , dummyTypeWithDict );
75+ edm::ProductDescription b4 (edm::InEvent, " modA" , " USER" , " i1" , dummyTypeID );
76+ edm::ProductDescription b5 (edm::InEvent, " modA" , " USER" , " i2" , dummyTypeID );
7477
7578 // These are pointers to all the branches that are available. In a
7679 // framework program, these would come from the ProductRegistry
0 commit comments