Esempio n. 1
0
    def test_validate_input_duplicate_removal(self):
        validated = TableWaveform._validate_input([
            TableWaveformEntry(0.0, 0.2, HoldInterpolationStrategy()),
            TableWaveformEntry(0.1, 0.2, LinearInterpolationStrategy()),
            TableWaveformEntry(0.1, 0.3, JumpInterpolationStrategy()),
            TableWaveformEntry(0.1, 0.3, HoldInterpolationStrategy()),
            TableWaveformEntry(0.2, 0.3, LinearInterpolationStrategy()),
            TableWaveformEntry(0.3, 0.3, JumpInterpolationStrategy())
        ])

        self.assertEqual(
            validated,
            (TableWaveformEntry(0.0, 0.2, HoldInterpolationStrategy()),
             TableWaveformEntry(0.1, 0.2, LinearInterpolationStrategy()),
             TableWaveformEntry(0.1, 0.3, HoldInterpolationStrategy()),
             TableWaveformEntry(0.3, 0.3, JumpInterpolationStrategy())))
Esempio n. 2
0
    def test_validate_input_errors(self):
        with self.assertRaises(ValueError):
            TableWaveform._validate_input(
                [TableWaveformEntry(0.0, 0.2, HoldInterpolationStrategy())])

        with self.assertRaises(ValueError):
            TableWaveform._validate_input([
                TableWaveformEntry(0.0, 0.2, HoldInterpolationStrategy()),
                TableWaveformEntry(0.0, 0.3, HoldInterpolationStrategy())
            ])

        with self.assertRaises(ValueError):
            TableWaveform._validate_input([
                TableWaveformEntry(0.1, 0.2, HoldInterpolationStrategy()),
                TableWaveformEntry(0.2, 0.2, HoldInterpolationStrategy())
            ])

        with self.assertRaises(ValueError):
            TableWaveform._validate_input([
                TableWaveformEntry(0.0, 0.2, HoldInterpolationStrategy()),
                TableWaveformEntry(0.2, 0.2, HoldInterpolationStrategy()),
                TableWaveformEntry(0.1, 0.2, HoldInterpolationStrategy())
            ])