Esempio n. 1
0
 def test_create_message(self):
     message = SMB2Echo()
     expected = b"\x04\x00" \
                b"\x00\x00"
     actual = message.pack()
     assert len(message) == 4
     assert actual == expected
Esempio n. 2
0
 def test_parse_message(self):
     actual = SMB2Echo()
     data = b"\x04\x00" \
            b"\x00\x00"
     data = actual.unpack(data)
     assert len(actual) == 4
     assert data == b""
     assert actual['structure_size'].get_value() == 4
     assert actual['reserved'].get_value() == 0
Esempio n. 3
0
    def test_broken_message_worker_exception(self, mocker):
        connection = Connection(uuid.uuid4(), 'server', 445, True)

        mock_transport = mocker.MagicMock()
        connection.transport = mock_transport
        connection.transport.recv.side_effect = Exception('test')
        connection._process_message_thread()

        with pytest.raises(Exception, match='test'):
            connection.send(SMB2Echo())

        with pytest.raises(Exception, match='test'):
            connection.receive(None)