1
0

transaction.BCDataStream: minor fixes

- fix read/write_boolean (though unused...)
- sanity check in read_bytes
This commit is contained in:
SomberNight
2020-02-25 20:05:46 +01:00
parent c0be0471f2
commit 6937b87a7c
2 changed files with 22 additions and 5 deletions

View File

@@ -55,6 +55,8 @@ class TestBCDataStream(ElectrumTestCase):
def test_bytes(self):
s = transaction.BCDataStream()
with self.assertRaises(transaction.SerializationError):
s.read_bytes(1)
s.write(b'foobar')
self.assertEqual(s.read_bytes(3), b'foo')
self.assertEqual(s.read_bytes(2), b'ba')
@@ -64,6 +66,18 @@ class TestBCDataStream(ElectrumTestCase):
self.assertEqual(s.read_bytes(1), b'r')
self.assertEqual(s.read_bytes(0), b'')
def test_bool(self):
s = transaction.BCDataStream()
s.write(b'f\x00\x00b')
self.assertTrue(s.read_boolean())
self.assertFalse(s.read_boolean())
self.assertFalse(s.read_boolean())
self.assertTrue(s.read_boolean())
s.write_boolean(True)
s.write_boolean(False)
self.assertEqual(b'\x01\x00', s.read_bytes(2))
self.assertFalse(s.can_read_more())
class TestTransaction(ElectrumTestCase):