예제 #1
0
class TestOptionsExpanderSingleDetectorSameOpening(unittest.TestCase):

    def setUp(self):
        unittest.TestCase.setUp(self)

        self.ops = Options("op1")
        self.ops.detectors['det1a'] = \
            PhotonIntensityDetector((d2r(35.0), d2r(45.0)), (0.0, d2r(360.0)))
        self.ops.detectors['det1b'] = \
            PhotonIntensityDetector((d2r(30.0), d2r(40.0)), (0.0, d2r(360.0)))
        self.ops.detectors['det2a'] = \
            PhotonDepthDetector((d2r(30.0), d2r(40.0)), (0.0, d2r(360.0)), 100)
        self.ops.detectors['det3'] = ShowersStatisticsDetector()

        self.expander = OptionsExpanderSingleDetectorSameOpening([])

    def tearDown(self):
        unittest.TestCase.tearDown(self)

    def testexpand_noduplicates(self):
        del self.ops.detectors['det1a']

        opss = self.expander.expand(self.ops)
        self.assertEqual(1, len(opss))

    def testexpand_duplicates(self):
        opss = self.expander.expand(self.ops)

        self.assertEqual(2, len(opss))

        for i in range(2):
            if 'det1a' in opss[i].detectors:
                self.assertNotIn('det1b', opss[i].detectors)
                self.assertNotIn('det2a', opss[i].detectors)
            if 'det1b' in opss[i].detectors:
                self.assertNotIn('det1a', opss[i].detectors)

    def testis_expandable(self):
        self.assertTrue(self.expander.is_expandable(self.ops))

        del self.ops.detectors['det1a']
        self.assertFalse(self.expander.is_expandable(self.ops))
예제 #2
0
    def setUp(self):
        unittest.TestCase.setUp(self)

        self.ops = Options("op1")
        self.ops.detectors['det1a'] = \
            PhotonIntensityDetector((d2r(35.0), d2r(45.0)), (0.0, d2r(360.0)))
        self.ops.detectors['det1b'] = \
            PhotonIntensityDetector((d2r(30.0), d2r(40.0)), (0.0, d2r(360.0)))
        self.ops.detectors['det2a'] = \
            PhotonDepthDetector((d2r(30.0), d2r(40.0)), (0.0, d2r(360.0)), 100)
        self.ops.detectors['det3'] = ShowersStatisticsDetector()

        self.expander = OptionsExpanderSingleDetectorSameOpening([])
예제 #3
0
    def __init__(self):
        _Converter.__init__(self)

        self._expander = OptionsExpanderSingleDetectorSameOpening(
            self.DETECTORS)