Ejemplo n.º 1
0
    def test_await_telemetry_count(self):
        count_seq = self.get_counter_sequence(20)
        sin_seq = self.get_oscillator_sequence(100)

        pred = predicates.greater_than_or_equal_to(10)
        search_pred = self.api.get_telemetry_pred("Counter", pred)
        count_pred = predicates.within_range(10, 20)

        t1 = self.fill_history_async(self.pipeline.enqueue_telemetry,
                                     count_seq, 0.05)
        t2 = self.fill_history_async(self.pipeline.enqueue_telemetry, sin_seq,
                                     0.01)
        results = self.api.await_telemetry_count(count_pred, search_pred)
        msg = predicates.get_descriptive_string(len(results), count_pred)
        assert count_pred(len(results)), msg
        t1.join()
        t2.join()

        self.api.clear_histories()

        t1 = self.fill_history_async(self.pipeline.enqueue_telemetry,
                                     count_seq, 0.05)
        t2 = self.fill_history_async(self.pipeline.enqueue_telemetry, sin_seq,
                                     0.01)
        results = self.api.await_telemetry_count(100)
        assert len(results) == 100, "await count should have found 100 items"
        t1.join()
        t2.join()

        self.fill_history_async(self.pipeline.enqueue_telemetry, count_seq,
                                0.05)
        self.fill_history_async(self.pipeline.enqueue_telemetry, sin_seq, 0.02)
        results = self.api.await_telemetry_count(100, timeout=1)
        assert len(
            results) < 100, "await count should have found fewer 100 items"
Ejemplo n.º 2
0
    def test_find_history_count_timeout(self):
        count_pred = predicates.greater_than_or_equal_to(10)
        search_pred = predicates.greater_than_or_equal_to(40)

        self.fill_history_async(self.tHistory.data_callback, range(0, 50),
                                0.01)

        results = self.api.find_history_count(count_pred, self.tHistory)
        assert (
            len(results) < 10
        ), "The search should have returned an incomplete list, but found {}".format(
            results)

        results = self.api.find_history_count(count_pred,
                                              self.tHistory,
                                              search_pred,
                                              timeout=2)
        self.assert_lists_equal(range(40, 50), results)

        self.fill_history_async(self.tHistory.data_callback, range(50, 60),
                                0.01)

        results = self.api.find_history_count(count_pred,
                                              self.tHistory,
                                              search_pred,
                                              start=50,
                                              timeout=2)
        self.assert_lists_equal(range(50, 60), results)

        self.tHistory.clear()

        self.fill_history_async(self.tHistory.data_callback, range(35, 60),
                                0.1)
        results = self.api.find_history_count(count_pred,
                                              self.tHistory,
                                              search_pred,
                                              timeout=1)
        assert (
            len(results) < 10
        ), "The search should have returned an incomplete list, but found {}".format(
            results)
Ejemplo n.º 3
0
    def test_find_history_count(self):
        count_pred = predicates.greater_than_or_equal_to(10)
        search_pred = predicates.greater_than_or_equal_to(40)

        self.fill_history(self.tHistory.data_callback, range(0, 50))
        results = self.api.find_history_count(count_pred, self.tHistory)
        self.assert_lists_equal(range(0, 50), results)

        results = self.api.find_history_count(count_pred, self.tHistory,
                                              search_pred)
        self.assert_lists_equal(range(40, 50), results)

        self.fill_history(self.tHistory.data_callback, range(50, 70))

        results = self.api.find_history_count(count_pred, self.tHistory,
                                              search_pred)
        self.assert_lists_equal(range(40, 70), results)

        results = self.api.find_history_count(count_pred,
                                              self.tHistory,
                                              start=60)
        self.assert_lists_equal(range(60, 70), results)
Ejemplo n.º 4
0
 def test_dummy_pipeline(self):
     length = 15
     event_list = self.get_severity_sequence(length)
     t1 = self.fill_history_async(self.pipeline.enqueue_event, event_list,
                                  0.1)
     print("waiting for queue to fill")
     pred = predicates.greater_than_or_equal_to(length // 2)
     results = self.api.await_event_count(pred)
     assert pred(len(results)), "the correct amount of objects was received"
     t1.join()
     evr_hist = self.api.get_event_test_history()
     item_count = len(evr_hist)
     assert (
         item_count == length
     ), "Were the correct number of items in the history? ({},{})".format(
         item_count, length)
Ejemplo n.º 5
0
    def test_assert_telemetry_count(self):
        count_seq = self.get_counter_sequence(20)
        sin_seq = self.get_oscillator_sequence(100)

        pred = predicates.greater_than_or_equal_to(10)
        search_pred = self.api.get_telemetry_pred("Counter", pred)
        count_pred = predicates.within_range(10, 20)

        self.fill_history_async(self.pipeline.enqueue_telemetry, count_seq,
                                0.05)
        self.fill_history_async(self.pipeline.enqueue_telemetry, sin_seq, 0.01)
        self.api.assert_telemetry_count(count_pred, search_pred, timeout=2)
        self.api.assert_telemetry_count(count_pred, search_pred)

        self.api.clear_histories()

        t1 = self.fill_history_async(self.pipeline.enqueue_telemetry,
                                     count_seq, 0.05)
        t2 = self.fill_history_async(self.pipeline.enqueue_telemetry, sin_seq,
                                     0.01)
        self.api.assert_telemetry_count(100, timeout=2)
        t1.join()
        t2.join()
        try:
            self.api.assert_telemetry_count(100)
            raise self.AssertionFailure()
        except AssertionError:
            assert True, "api raised the correct error"
        except self.AssertionFailure:
            assert False, "api failed to raise an assertion error"

        self.api.clear_histories()

        self.fill_history_async(self.pipeline.enqueue_telemetry, count_seq,
                                0.05)
        self.fill_history_async(self.pipeline.enqueue_telemetry, sin_seq, 0.02)
        try:
            self.api.assert_telemetry_count(100, timeout=1)
            raise self.AssertionFailure()
        except AssertionError:
            assert True, "api raised the correct error"
        except self.AssertionFailure:
            assert False, "api failed to raise an assertion error"
Ejemplo n.º 6
0
 def test_greater_than_or_equal_to(self):
     pred = predicates.greater_than_or_equal_to(1)
     assert pred(1), "one is greater than or equal to 1"
     assert pred(10), "ten is greater than or equal to 1"
     assert not pred(-1), "negative is not greater than or equal to 1"
     self.check_str(pred)