Esempio n. 1
0
    def test_SequentialProperty_dependence_on_SequentialProperty(self):
        def steady_increase(previous_value):
            return previous_value + 1

        P1 = properties.SequentialProperty(steady_increase, initializer=1)

        def geometric_increase(previous_value, step_length):
            return previous_value + step_length

        P2 = properties.SequentialProperty(geometric_increase, initializer=1)

        P2.update(sequence_length=5, step_length=P1)
        self.assertEqual(P2.current_value, [3, 6, 10, 15, 21])
Esempio n. 2
0
    def test_SequentialProperty_dependence_on_SequentialProperty(self):
        def steady_increase(previous_value=None):
            return previous_value + 1

        P1 = properties.SequentialProperty(steady_increase, initializer=0)

        def geometric_increase(previous_value=None, step_length=None):
            return previous_value + step_length

        P2 = properties.SequentialProperty(geometric_increase, initializer=0)

        P2.has_updated_since_last_resolve = False
        P2.update(sequence_length=5, step_length=P1)
        self.assertEqual(P2.current_value, [0, 1, 3, 6, 10])
Esempio n. 3
0
    def test_SequentialProperty_timedependent(self):
        def steady_increase(previous_value):
            return previous_value + 1

        sampling_rule = steady_increase
        P = properties.SequentialProperty(sampling_rule, initializer=2)
        P.update(sequence_length=5)
        self.assertEqual(P.current_value, [3, 4, 5, 6, 7])
Esempio n. 4
0
    def test_SequentialProperty_timedependent(self):
        def steady_increase(previous_value=None):
            return previous_value + 1

        sampling_rule = steady_increase
        P = properties.SequentialProperty(sampling_rule, initializer=0)
        P.has_updated_since_last_resolve = False
        P.update(sequence_length=5)
        self.assertEqual(P.current_value, [0, 1, 2, 3, 4])
Esempio n. 5
0
 def test_SequentialProperty_Constant(self):
     sampling_rule = 1
     P = properties.SequentialProperty(sampling_rule, initializer=0)
     P.update(sequence_length=10)
     self.assertEqual(P.current_value, [1, 1, 1, 1, 1, 1, 1, 1, 1, 1])