Пример #1
0
    def test_scenes_should_not_be_overwriten_if_4_valley_is_passed(self):
        first = mockCVF(0, 0, 0, 1)
        second = mockCVF(0, 0, 0, 0)
        third = mockCVF(0, 0, 0, 0.5)
        fourth = mockCVF(0, 0, 0, 1)
        morph.findInflection.return_value = 2
        morph.overrideSunMovement([first, second, third, fourth])

        self.assertEqual(first.getSunAltitude(), 1)
        self.assertEqual(second.getSunAltitude(), 0)
        self.assertEqual(third.getSunAltitude(), 0.5)
        self.assertEqual(fourth.getSunAltitude(), 1)
Пример #2
0
    def test_scenes_should_not_be_overwriten_if_4_valley_is_passed(self):
        first = mockCVF(0, 0, 0, 1)
        second = mockCVF(0, 0, 0, 0)
        third = mockCVF(0, 0, 0, 0.5)
        fourth = mockCVF(0, 0, 0, 1)
        morph.findInflection.return_value = 2
        morph.overrideSunMovement([first, second, third, fourth])

        self.assertEqual(first.getSunAltitude(), 1)
        self.assertEqual(second.getSunAltitude(), 0)
        self.assertEqual(third.getSunAltitude(), 0.5)
        self.assertEqual(fourth.getSunAltitude(), 1)
Пример #3
0
    def test_spike_should_create_two_segments(self):
        first = mockCVF(0, 0, 0, 0)
        second = mockCVF(0, 0, 0, 0)
        third = mockCVF(0, 0, 0, 1)
        fourth = mockCVF(0, 0, 0, 0)
        fifth = mockCVF(0, 0, 0, 0)

        mockCVF.setSunAltitude = self.setSun
        morph.findInflection.return_value = 3
        morph.overrideSunMovement([first, second, third, fourth, fifth])

        self.assertEqual(first.getSunAltitude(), 0.0)
        self.assertEqual(second.getSunAltitude(), 0.5)
        self.assertEqual(third.getSunAltitude(), 1.0)
        self.assertEqual(fourth.getSunAltitude(), 0.5)
        self.assertEqual(fifth.getSunAltitude(), 0.0)
Пример #4
0
    def test_spike_should_create_two_segments(self):
        first = mockCVF(0, 0, 0, 0)
        second = mockCVF(0, 0, 0, 0)
        third = mockCVF(0, 0, 0, 1)
        fourth = mockCVF(0, 0, 0, 0)
        fifth = mockCVF(0, 0, 0, 0)

        mockCVF.setSunAltitude = self.setSun
        morph.findInflection.return_value = 3
        morph.overrideSunMovement([first, second, third, fourth, fifth])

        self.assertEqual(first.getSunAltitude(), 0.0)
        self.assertEqual(second.getSunAltitude(), 0.5)
        self.assertEqual(third.getSunAltitude(), 1.0)
        self.assertEqual(fourth.getSunAltitude(), 0.5)
        self.assertEqual(fifth.getSunAltitude(), 0.0)
Пример #5
0
    def test_dual_mountain_should_be_handled_right(self):
        first = mockCVF(0, 0, 0, 0)
        second = mockCVF(0, 0, 0, 0)
        third = mockCVF(0, 0, 0, 1)
        fourth = mockCVF(0, 0, 0, 0)
        fifth = mockCVF(0, 0, 0, 0)
        sixth = mockCVF(0, 0, 0, 1)
        seventh = mockCVF(0, 0, 0, 0)

        mockCVF.setSunAltitude = self.setSun
        morph.findInflection = self.findInflection

        morph.overrideSunMovement([first, second, third, fourth, fifth, sixth, seventh])

        self.assertEqual(first.getSunAltitude(), 0)
        self.assertEqual(second.getSunAltitude(), 0.5)
        self.assertEqual(third.getSunAltitude(), 1)
        self.assertEqual(fourth.getSunAltitude(), 0.5)
        self.assertEqual(fifth.getSunAltitude(), 0)
        self.assertEqual(sixth.getSunAltitude(), 1)
        self.assertEqual(seventh.getSunAltitude(), 0)
Пример #6
0
    def test_dual_mountain_should_be_handled_right(self):
        first = mockCVF(0, 0, 0, 0)
        second = mockCVF(0, 0, 0, 0)
        third = mockCVF(0, 0, 0, 1)
        fourth = mockCVF(0, 0, 0, 0)
        fifth = mockCVF(0, 0, 0, 0)
        sixth = mockCVF(0, 0, 0, 1)
        seventh = mockCVF(0, 0, 0, 0)

        mockCVF.setSunAltitude = self.setSun
        morph.findInflection = self.findInflection

        morph.overrideSunMovement(
            [first, second, third, fourth, fifth, sixth, seventh])

        self.assertEqual(first.getSunAltitude(), 0)
        self.assertEqual(second.getSunAltitude(), 0.5)
        self.assertEqual(third.getSunAltitude(), 1)
        self.assertEqual(fourth.getSunAltitude(), 0.5)
        self.assertEqual(fifth.getSunAltitude(), 0)
        self.assertEqual(sixth.getSunAltitude(), 1)
        self.assertEqual(seventh.getSunAltitude(), 0)
Пример #7
0
 def test_overrideSunMovement_should_not_call_findInflection_for_short_inputs(self):
     morph.overrideSunMovement([self.noon, self.dusk])
     self.assertFalse(morph.findInflection.called)
Пример #8
0
    def test_last_scene_shouldnt_be_overwritten_if_decreasing_is_passed(self):
        oldLast = self.dusk.getSunAltitude()

        morph.overrideSunMovement([self.noon, self.dusk, self.dusk])

        self.assertEqual(self.dusk.getSunAltitude(), oldLast)
Пример #9
0
 def test_middle_scene_should_be_overwritten_if_increasing_is_passed(self):
     morph.overrideSunMovement([self.dusk, self.dawn, self.noon])
     mockCVF.setSunAltitude.assert_any_call(1.507/2)
Пример #10
0
 def test_no_scenes_should_be_overwritten_if_two_are_passed(self):
     self.assertIsNone(morph.overrideSunMovement([self.dawn, self.dawn]))
     self.assertFalse(self.dawn.setSunAltitude.called)
Пример #11
0
 def test_no_scenes_should_be_overwritten_if_none_are_passed(self):
     self.assertIsNone(morph.overrideSunMovement([]))
Пример #12
0
 def test_no_scenes_should_be_overwritten_if_none_are_passed(self):
     self.assertIsNone(morph.overrideSunMovement([]))
Пример #13
0
 def test_overrideSunMovement_should_not_call_findInflection_for_short_inputs(
         self):
     morph.overrideSunMovement([self.noon, self.dusk])
     self.assertFalse(morph.findInflection.called)
Пример #14
0
    def test_last_scene_shouldnt_be_overwritten_if_decreasing_is_passed(self):
        oldLast = self.dusk.getSunAltitude()

        morph.overrideSunMovement([self.noon, self.dusk, self.dusk])

        self.assertEqual(self.dusk.getSunAltitude(), oldLast)
Пример #15
0
 def test_middle_scene_should_be_overwritten_if_increasing_is_passed(self):
     morph.overrideSunMovement([self.dusk, self.dawn, self.noon])
     mockCVF.setSunAltitude.assert_any_call(1.507 / 2)
Пример #16
0
 def test_no_scenes_should_be_overwritten_if_two_are_passed(self):
     self.assertIsNone(morph.overrideSunMovement([self.dawn, self.dawn]))
     self.assertFalse(self.dawn.setSunAltitude.called)
Пример #17
0
 def test_increasing_sun_should_stay_the_same(self):
     backup = self.scenes
     morph.overrideSunMovement(self.scenes)
     self.assertListEqual(backup, self.scenes)
Пример #18
0
 def test_increasing_sun_should_stay_the_same(self):
     backup = self.scenes
     morph.overrideSunMovement(self.scenes)
     self.assertListEqual(backup, self.scenes)