Ejemplo n.º 1
0
    def test_too_many_fragments_raises(self):
        """Test exception raised if too many fragments."""
        bytestream = b'\xFE\xFF\x00' * 31  # 93 bytes
        # At most we can have 47 fragments
        for fragment in fragment_frame(bytestream, nr_fragments=47):
            pass

        with pytest.raises(ValueError):
            for fragment in fragment_frame(bytestream, nr_fragments=48):
                pass
Ejemplo n.º 2
0
    def test_too_many_fragments_raises(self):
        """Test exception raised if too many fragments."""
        bytestream = b'\xFE\xFF\x00' * 31  # 93 bytes
        # At most we can have 47 fragments
        for fragment in fragment_frame(bytestream, nr_fragments=47):
            pass

        with pytest.raises(ValueError):
            for fragment in fragment_frame(bytestream, nr_fragments=48):
                pass
Ejemplo n.º 3
0
 def test_single_fragment_odd_data(self):
     """Test 1 fragment from odd data"""
     bytestream = b'\xFE\xFF\x00'
     fragments = fragment_frame(bytestream, nr_fragments=1)
     fragment = next(fragments)
     assert pytest.raises(StopIteration, next, fragments)
     assert fragment == bytestream + b'\x00'
     assert len(fragment) == 4
Ejemplo n.º 4
0
 def test_single_fragment_odd_data(self):
     """Test 1 fragment from odd data"""
     bytestream = b'\xFE\xFF\x00'
     fragments = fragment_frame(bytestream, nr_fragments=1)
     fragment = next(fragments)
     assert pytest.raises(StopIteration, next, fragments)
     assert fragment == bytestream + b'\x00'
     assert len(fragment) == 4
Ejemplo n.º 5
0
 def test_even_fragment_even_data(self):
     """Test even fragments from even data"""
     bytestream = b'\xFE\xFF\x00\xE1'
     # Each fragment should be 2 bytes
     fragments = fragment_frame(bytestream, nr_fragments=2)
     fragment = next(fragments)
     assert fragment == bytestream[:2]
     fragment = next(fragments)
     assert fragment == bytestream[2:]
     assert pytest.raises(StopIteration, next, fragments)
Ejemplo n.º 6
0
 def test_even_fragment_even_data(self):
     """Test even fragments from even data"""
     bytestream = b'\xFE\xFF\x00\xE1'
     # Each fragment should be 2 bytes
     fragments = fragment_frame(bytestream, nr_fragments=2)
     fragment = next(fragments)
     assert fragment == bytestream[:2]
     fragment = next(fragments)
     assert fragment == bytestream[2:]
     assert pytest.raises(StopIteration, next, fragments)
Ejemplo n.º 7
0
    def test_single_fragment_even_data(self):
        """Test 1 fragment from even data"""
        bytestream = b'\xFE\xFF\x00\xE1'
        fragments = fragment_frame(bytestream, nr_fragments=1)
        fragment = next(fragments)
        assert pytest.raises(StopIteration, next, fragments)
        assert fragment == bytestream
        assert len(fragment) == 4

        assert isinstance(fragment, bytes)
Ejemplo n.º 8
0
    def test_single_fragment_even_data(self):
        """Test 1 fragment from even data"""
        bytestream = b'\xFE\xFF\x00\xE1'
        fragments = fragment_frame(bytestream, nr_fragments=1)
        fragment = next(fragments)
        assert pytest.raises(StopIteration, next, fragments)
        assert fragment == bytestream
        assert len(fragment) == 4

        assert isinstance(fragment, bytes)
Ejemplo n.º 9
0
 def test_even_fragment_odd_data(self):
     """Test even fragments from odd data"""
     bytestream = b'\xFE\xFF\x00'
     # First fragment should be 1.5 -> 2 bytes, with the final
     #   fragment 1 byte + 1 byte padding
     fragments = fragment_frame(bytestream, nr_fragments=2)
     fragment = next(fragments)
     assert fragment == b'\xFE\xFF'
     fragment = next(fragments)
     assert fragment == b'\x00\x00'
     assert pytest.raises(StopIteration, next, fragments)
Ejemplo n.º 10
0
 def test_even_fragment_odd_data(self):
     """Test even fragments from odd data"""
     bytestream = b'\xFE\xFF\x00'
     # First fragment should be 1.5 -> 2 bytes, with the final
     #   fragment 1 byte + 1 byte padding
     fragments = fragment_frame(bytestream, nr_fragments=2)
     fragment = next(fragments)
     assert fragment == b'\xFE\xFF'
     fragment = next(fragments)
     assert fragment == b'\x00\x00'
     assert pytest.raises(StopIteration, next, fragments)
Ejemplo n.º 11
0
 def test_odd_fragments_odd_data(self):
     """Test odd fragments from odd data"""
     bytestream = b'\xFE\xFF\x00' * 31  # 93 bytes
     assert len(bytestream) % 2 == 1
     # Each fragment should be 13.3 -> 14 bytes, with the final
     #   fragment 9 bytes + 1 byte padding
     fragments = fragment_frame(bytestream, nr_fragments=7)
     for ii in range(6):
         fragment = next(fragments)
         assert len(fragment) == 14
     fragment = next(fragments)
     assert len(fragment) == 10
     assert pytest.raises(StopIteration, next, fragments)
Ejemplo n.º 12
0
 def test_odd_fragments_odd_data(self):
     """Test odd fragments from odd data"""
     bytestream = b'\xFE\xFF\x00' * 31  # 93 bytes
     assert len(bytestream) % 2 == 1
     # Each fragment should be 13.3 -> 14 bytes, with the final
     #   fragment 9 bytes + 1 byte padding
     fragments = fragment_frame(bytestream, nr_fragments=7)
     for ii in range(6):
         fragment = next(fragments)
         assert len(fragment) == 14
     fragment = next(fragments)
     assert len(fragment) == 10
     assert pytest.raises(StopIteration, next, fragments)
Ejemplo n.º 13
0
    def test_odd_fragments_even_data(self):
        """Test odd fragments from even data"""
        bytestream = b'\xFE\xFF\x00\xE1' * 31  # 124 bytes
        assert len(bytestream) % 2 == 0
        # Each fragment should be 17.7 -> 18 bytes, with the final
        #   fragment 16 bytes
        fragments = fragment_frame(bytestream, nr_fragments=7)
        for ii in range(6):
            fragment = next(fragments)
            assert len(fragment) == 18

        fragment = next(fragments)
        assert len(fragment) == 16
        assert pytest.raises(StopIteration, next, fragments)
Ejemplo n.º 14
0
    def test_odd_fragments_even_data(self):
        """Test odd fragments from even data"""
        bytestream = b'\xFE\xFF\x00\xE1' * 31  # 124 bytes
        assert len(bytestream) % 2 == 0
        # Each fragment should be 17.7 -> 18 bytes, with the final
        #   fragment 16 bytes
        fragments = fragment_frame(bytestream, nr_fragments=7)
        for ii in range(6):
            fragment = next(fragments)
            assert len(fragment) == 18

        fragment = next(fragments)
        assert len(fragment) == 16
        assert pytest.raises(StopIteration, next, fragments)
Ejemplo n.º 15
0
 def time_fragment_single(self):
     """Time fragmenting each frame into 1 fragment."""
     for ii in range(self.no_runs):
         for fragment in fragment_frame(self.test_data[0], 1):
             pass
Ejemplo n.º 16
0
 def time_fragment_ten(self):
     """Time fragmenting each frame into 10 fragments."""
     for ii in range(self.no_runs):
         for fragment in fragment_frame(self.test_data[0], 10):
             pass
Ejemplo n.º 17
0
 def time_fragment_ten(self):
     """Time fragmenting each frame into 10 fragments."""
     for ii in range(self.no_runs):
         for fragment in fragment_frame(self.test_data[0], 10):
             pass
Ejemplo n.º 18
0
 def time_fragment_single(self):
     """Time fragmenting each frame into 1 fragment."""
     for ii in range(self.no_runs):
         for fragment in fragment_frame(self.test_data[0], 1):
             pass