예제 #1
0
    def test_cameraAlertCreated_soundAsFirstHandlerAlertHandled(
            self, bip_mock):
        # setup

        camera = Camera("Camera1", ["outside", "garage"])
        camera.night_mode = True
        doggo = Doggo("Jake")
        soundalarm = SoundAlarm()
        system = SecuritySystem()
        system.strategy = OldestFirstStrategy()

        system.registerCreator(camera)
        system.registerHandler(soundalarm)
        system.registerHandler(doggo)

        # act
        camera.detect_movement("human", "outside",
                               datetime(2020, 11, 26, 23, 20))

        # assert
        bip_mock.assert_called()
예제 #2
0
 def setUp(self):
     self.simple_doggo = Doggo("Jake")
예제 #3
0
 def test_doggoName_nameChanged_raisesError(self):
     doggo = Doggo("Something in line")
     with self.assertRaises(Exception):
         doggo.name = "Something new"
예제 #4
0
 def test_doggoName_nameSetNotAlphabetic_raisesError(self):
     with self.assertRaises(ValueError):
         doggo = Doggo("!!!")
예제 #5
0
 def test_doggoName_nameSetEmptyString_raisesError(self):
     with self.assertRaises(ValueError):
         doggo = Doggo("")
예제 #6
0
 def test_doggoName_complexNameSet_returnsName(self):
     doggo = Doggo("Mr. Puppet")
     self.assertEqual(doggo.name, "Mr. Puppet")
예제 #7
0
 def setUp(self):
     self.doggo = Doggo("Jake")
     self.alert3 = Alert("outside", "human", 3)
     self.alert2 = Alert("outside", "human", 2)
     self.alert1 = Alert("outside", "human", 1)