Skip to content

Commit 5be2b92

Browse files
committed
Remove SwitchProducer tests
1 parent 57ccb0f commit 5be2b92

23 files changed

+6
-2033
lines changed

FWCore/Framework/test/test_catch2_ScheduleBuilder.cc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ namespace {
3030
std::string type_;
3131
std::string edmType_;
3232
};
33-
enum class EdmType { kProducer, kFilter, kAnalyzer, kSwitchProducer, kOutputModule };
33+
enum class EdmType { kProducer, kFilter, kAnalyzer, kOutputModule };
3434

3535
struct ConfigBuilder {
3636
void addModule(std::string const& iLabel, std::string const& iType, EdmType iEdmType) {
@@ -47,8 +47,6 @@ namespace {
4747
return "EDAnalyzer";
4848
case EdmType::kOutputModule:
4949
return "OutputModule";
50-
case EdmType::kSwitchProducer:
51-
return "SwitchProducer";
5250
}
5351
return "";
5452
}
@@ -244,4 +242,4 @@ TEST_CASE("test edm::ScheduleBuilder", "[ScheduleBuilder]") {
244242
REQUIRE(builder.endPathStatusInserters_.empty());
245243
REQUIRE(not builder.resultsInserter_);
246244
}
247-
}
245+
}

FWCore/Framework/test/test_module_delete_cfg.py

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
# - DAG of event/lumi/run producers that are not consumed by an always-running module, whole DAG deleted
1717
# - DAG of event(/lumi/run) producers that are partly consumed (kept) and partly non-consumed (delete)
1818
# - EDAlias with one instance consumed (original producer kept) and another non-consumed (original producer deleted)
19-
# - SwitchProducer non-chosen case deleted
2019

2120
intEventProducer = cms.EDProducer("IntProducer", ivalue = cms.int32(1))
2221
intNonEventProducer = cms.EDProducer("NonEventIntProducer", ivalue = cms.int32(1))
@@ -114,20 +113,6 @@ def nonEventConsumer(transition, sourcePattern, expected):
114113
srcEvent = cms.untracked.VInputTag("producerEventAlias:consumed")
115114
)
116115

117-
class SwitchProducerTest(cms.SwitchProducer):
118-
def __init__(self, **kargs):
119-
super(SwitchProducerTest,self).__init__(
120-
dict(
121-
test1 = lambda accelerators: (True, -10),
122-
test2 = lambda accelerators: (True, -9)
123-
), **kargs)
124-
process.producerEventSwitchProducerNotConsumed = cms.EDProducer("edmtest::TestModuleDeleteProducer")
125-
process.producerEventSwitchProducerConsumed = intEventProducerMustRun.clone()
126-
process.producerEventSwitchProducer = SwitchProducerTest(
127-
test1 = cms.EDProducer("AddIntsProducer", labels = cms.VInputTag("producerEventSwitchProducerNotConsumed")),
128-
test2 = cms.EDProducer("AddIntsProducer", labels = cms.VInputTag("producerEventSwitchProducerConsumed")),
129-
)
130-
131116
process.consumerNotExist = cms.EDAnalyzer("edmtest::GenericIntsAnalyzer",
132117
inputShouldBeMissing = cms.untracked.bool(True),
133118
srcBeginProcess = cms.untracked.VInputTag(
@@ -179,9 +164,6 @@ def __init__(self, **kargs):
179164
#
180165
process.producerEventAliasNotConsumed,
181166
process.producerEventAliasConsumed,
182-
#
183-
process.producerEventSwitchProducerNotConsumed,
184-
process.producerEventSwitchProducerConsumed,
185167
)
186168

187169
process.p = cms.Path(
@@ -199,8 +181,6 @@ def __init__(self, **kargs):
199181
#
200182
process.consumerEventAlias+
201183
#
202-
process.producerEventSwitchProducer+
203-
#
204184
process.intAnalyzerDelete
205185
,
206186
process.t

FWCore/Integration/plugins/BuildFile.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<use name="DataFormats/TestObjects"/>
2323
</library>
2424

25-
<library file="AssociationMapProducer.cc,AssociationMapAnalyzer.cc,MissingDictionaryTestProducer.cc,ExistingDictionaryTestModules.cc, TableTestModules.cc, TestGlobalOutput.cc, TestLimitedOutput.cc, TestOneOutput.cc, PluginUsingProducer.cc,SwitchProducerProvenanceAnalyzer.cc,ProducerUsingCollector.cc,ExceptionThrowingProducer.cc,TestServiceOne.cc,TestServiceTwo.cc,ProdigalAnalyzer.cc,IntSource.cc,ViewAnalyzer.cc,TestFindProduct.cc,ManyProductProducer.cc,TestParentage.cc,HierarchicalEDProducer.cc,ThrowingSource.cc, DelayedReaderThrowingSource.cc,TestHistoryKeeping.cc,PathAnalyzer.cc,SourceWithWaits.cc" name="FWCoreIntegrationSomeTestModules">
25+
<library file="AssociationMapProducer.cc,AssociationMapAnalyzer.cc,MissingDictionaryTestProducer.cc,ExistingDictionaryTestModules.cc, TableTestModules.cc, TestGlobalOutput.cc, TestLimitedOutput.cc, TestOneOutput.cc, PluginUsingProducer.cc,ProducerUsingCollector.cc,ExceptionThrowingProducer.cc,TestServiceOne.cc,TestServiceTwo.cc,ProdigalAnalyzer.cc,IntSource.cc,ViewAnalyzer.cc,TestFindProduct.cc,ManyProductProducer.cc,TestParentage.cc,HierarchicalEDProducer.cc,ThrowingSource.cc, DelayedReaderThrowingSource.cc,TestHistoryKeeping.cc,PathAnalyzer.cc,SourceWithWaits.cc" name="FWCoreIntegrationSomeTestModules">
2626
<flags EDM_PLUGIN="1"/>
2727
<use name="FWCore/Framework"/>
2828
<use name="FWCore/ParameterSet"/>

FWCore/Integration/plugins/SwitchProducerProvenanceAnalyzer.cc

Lines changed: 0 additions & 115 deletions
This file was deleted.

FWCore/Integration/test/BuildFile.xml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,7 @@
3333
<test name="TestIntegrationRefMerge" command="run_RefMerge.sh"/>
3434
<test name="TestIntegrationRefAlias" command="run_RefAlias.sh"/>
3535
<test name="TestIntegrationParameterSet" command="run_ParameterSet.sh"/>
36-
<test name="TestIntegrationSwitchProducer" command="run_TestSwitchProducer.sh"/>
3736
<test name="TestIntegration_TestEDAlias" command="run_TestEDAlias.sh"/>
38-
<test name="TestIntegrationProcessAccelerator" command="run_TestProcessAccelerator.sh"/>
3937
<test name="TestFWCoreIntegrationModuleTypeResolver" command="run_TestModuleTypeResolver.sh"/>
4038
<test name="CatchStdExceptiontest" command="CatchStdExceptiontest.sh"/>
4139
<test name="CatchCmsExceptiontest" command="CatchCmsExceptiontest.sh"/>
@@ -52,15 +50,6 @@
5250
<use name="catch2"/>
5351
</bin>
5452

55-
<bin file="SwitchProducer_t.cpp">
56-
<use name="FWCore/Framework"/>
57-
<use name="FWCore/ParameterSet"/>
58-
<use name="FWCore/ParameterSetReader"/>
59-
<use name="FWCore/TestProcessor"/>
60-
<use name="DataFormats/Provenance"/>
61-
<use name="catch2"/>
62-
</bin>
63-
6453
<bin file="ProcessAccelerator_t.cpp">
6554
<use name="FWCore/Framework"/>
6655
<use name="FWCore/ParameterSet"/>

FWCore/Integration/test/ProcessAccelerator_t.cpp

Lines changed: 0 additions & 144 deletions
Original file line numberDiff line numberDiff line change
@@ -14,51 +14,6 @@
1414
static constexpr auto s_tag = "[ProcessAccelerator]";
1515

1616
namespace {
17-
std::string makeSwitchConfig(bool test2Enabled,
18-
std::string_view test1,
19-
std::string_view test2,
20-
std::string_view accelerator) {
21-
const std::string appendTest2 = test2Enabled ? "self._enabled.append('test2')" : "";
22-
return fmt::format(
23-
R"_(from FWCore.TestProcessor.TestProcess import *
24-
import FWCore.ParameterSet.Config as cms
25-
26-
class ProcessAcceleratorTest(cms.ProcessAccelerator):
27-
def __init__(self):
28-
super(ProcessAcceleratorTest,self).__init__()
29-
self._labels = ["test1", "test2"]
30-
self._enabled = ["test1"]
31-
{}
32-
def labels(self):
33-
return self._labels
34-
def enabledLabels(self):
35-
return self._enabled
36-
37-
class SwitchProducerTest(cms.SwitchProducer):
38-
def __init__(self, **kargs):
39-
super(SwitchProducerTest,self).__init__(
40-
dict(
41-
cpu = cms.SwitchProducer.getCpu(),
42-
test1 = lambda accelerators: ("test1" in accelerators, 2),
43-
test2 = lambda accelerators: ("test2" in accelerators, 3),
44-
), **kargs)
45-
46-
process = TestProcess()
47-
process.options.accelerators = ["{}"]
48-
process.ProcessAcceleratorTest = ProcessAcceleratorTest()
49-
process.s = SwitchProducerTest(
50-
cpu = cms.EDProducer('IntProducer', ivalue = cms.int32(0)),
51-
test1 = {},
52-
test2 = {}
53-
)
54-
process.moduleToTest(process.s)
55-
)_",
56-
appendTest2,
57-
accelerator,
58-
test1,
59-
test2);
60-
}
61-
6217
std::string makeResolverConfig(bool enableOther, std::string_view accelerator, std::string_view variant) {
6318
const std::string appendOther = enableOther ? "self._enabled.append('other')" : "";
6419
const std::string explicitVariant =
@@ -116,105 +71,6 @@ process.moduleToTest(process.m)
11671
}
11772
} // namespace
11873

119-
TEST_CASE("Configuration with SwitchProducer", s_tag) {
120-
const std::string test1{"cms.EDProducer('IntProducer', ivalue = cms.int32(1))"};
121-
const std::string test2{"cms.EDProducer('ManyIntProducer', ivalue = cms.int32(2), values = cms.VPSet())"};
122-
123-
const std::string baseConfig_auto = makeSwitchConfig(true, test1, test2, "*");
124-
const std::string baseConfig_test1 = makeSwitchConfig(true, test1, test2, "test1");
125-
const std::string baseConfig_test2 = makeSwitchConfig(true, test1, test2, "test2");
126-
const std::string baseConfigTest2Disabled_auto = makeSwitchConfig(false, test1, test2, "*");
127-
const std::string baseConfigTest2Disabled_test1 = makeSwitchConfig(false, test1, test2, "test1");
128-
const std::string baseConfigTest2Disabled_test2 = makeSwitchConfig(false, test1, test2, "test2");
129-
130-
SECTION("Configuration hash is not changed") {
131-
std::unique_ptr<edm::ParameterSet> pset_auto, pset_test1, pset_test2;
132-
std::unique_ptr<edm::ParameterSet> psetTest2Disabled_auto, psetTest2Disabled_test1, psetTest2Disabled_test2;
133-
edm::makeParameterSets(baseConfig_auto, pset_auto);
134-
edm::makeParameterSets(baseConfig_test1, pset_test1);
135-
edm::makeParameterSets(baseConfig_test2, pset_test2);
136-
edm::makeParameterSets(baseConfigTest2Disabled_auto, psetTest2Disabled_auto);
137-
edm::makeParameterSets(baseConfigTest2Disabled_test1, psetTest2Disabled_test1);
138-
edm::makeParameterSets(baseConfigTest2Disabled_test2, psetTest2Disabled_test2);
139-
pset_auto->registerIt();
140-
pset_test1->registerIt();
141-
pset_test2->registerIt();
142-
psetTest2Disabled_auto->registerIt();
143-
psetTest2Disabled_test1->registerIt();
144-
psetTest2Disabled_test2->registerIt();
145-
REQUIRE(pset_auto->id() == pset_test1->id());
146-
REQUIRE(pset_auto->id() == pset_test2->id());
147-
REQUIRE(pset_auto->id() == psetTest2Disabled_auto->id());
148-
REQUIRE(pset_auto->id() == psetTest2Disabled_test1->id());
149-
REQUIRE(pset_auto->id() == psetTest2Disabled_test2->id());
150-
}
151-
152-
edm::test::TestProcessor::Config config_auto{baseConfig_auto};
153-
edm::test::TestProcessor::Config config_test1{baseConfig_test1};
154-
edm::test::TestProcessor::Config config_test2{baseConfig_test2};
155-
edm::test::TestProcessor::Config configTest2Disabled_auto{baseConfigTest2Disabled_auto};
156-
edm::test::TestProcessor::Config configTest2Disabled_test1{baseConfigTest2Disabled_test1};
157-
edm::test::TestProcessor::Config configTest2Disabled_test2{baseConfigTest2Disabled_test2};
158-
159-
SECTION("Base configuration is OK") { REQUIRE_NOTHROW(edm::test::TestProcessor(config_auto)); }
160-
161-
SECTION("No event data") {
162-
edm::test::TestProcessor tester(config_auto);
163-
REQUIRE_NOTHROW(tester.test());
164-
}
165-
166-
SECTION("beginJob and endJob only") {
167-
edm::test::TestProcessor tester(config_auto);
168-
REQUIRE_NOTHROW(tester.testBeginAndEndJobOnly());
169-
}
170-
171-
SECTION("Run with no LuminosityBlocks") {
172-
edm::test::TestProcessor tester(config_auto);
173-
REQUIRE_NOTHROW(tester.testRunWithNoLuminosityBlocks());
174-
}
175-
176-
SECTION("LuminosityBlock with no Events") {
177-
edm::test::TestProcessor tester(config_auto);
178-
REQUIRE_NOTHROW(tester.testLuminosityBlockWithNoEvents());
179-
}
180-
181-
SECTION("Test2 enabled, acclerators=*") {
182-
edm::test::TestProcessor tester(config_auto);
183-
auto event = tester.test();
184-
REQUIRE(event.get<edmtest::IntProduct>()->value == 2);
185-
}
186-
187-
SECTION("Test2 enabled, acclerators=test1") {
188-
edm::test::TestProcessor tester(config_test1);
189-
auto event = tester.test();
190-
REQUIRE(event.get<edmtest::IntProduct>()->value == 1);
191-
}
192-
193-
SECTION("Test2 enabled, acclerators=test2") {
194-
edm::test::TestProcessor tester(config_test2);
195-
auto event = tester.test();
196-
REQUIRE(event.get<edmtest::IntProduct>()->value == 2);
197-
}
198-
199-
SECTION("Test2 disabled, accelerators=*") {
200-
edm::test::TestProcessor tester(configTest2Disabled_auto);
201-
auto event = tester.test();
202-
REQUIRE(event.get<edmtest::IntProduct>()->value == 1);
203-
}
204-
205-
SECTION("Test2 disabled, accelerators=test1") {
206-
edm::test::TestProcessor tester(configTest2Disabled_test1);
207-
auto event = tester.test();
208-
REQUIRE(event.get<edmtest::IntProduct>()->value == 1);
209-
}
210-
211-
SECTION("Test2 disabled, accelerators=test2") {
212-
REQUIRE_THROWS_WITH(
213-
edm::test::TestProcessor(configTest2Disabled_test2),
214-
Catch::Contains("The system has no compute accelerators that match the patterns") && Catch::Contains("test1"));
215-
}
216-
}
217-
21874
TEST_CASE("Configuration with ModuleTypeResolver", s_tag) {
21975
const std::string baseConfig_auto = makeResolverConfig(true, "*", "");
22076
const std::string baseConfig_cpu = makeResolverConfig(true, "cpu", "");

0 commit comments

Comments
 (0)