Scenarios

Scenarios describe what you need. They define the tests and the necessary devices for them. Here you can find all scenarios that are implemented in this BalderHub package.

For testing client devices

Handshaking Phase Scenarios

class balderhub.rfb.scenarios.client.handshaking.ScenarioRfbHandshakingIllegalProt

Bases: Scenario

This scenario tests the client device if it continues with the protocol version 3.3 in case the server sends an invalid protocol.

class RfbClient

Bases: Device

the rfb client device

_outer_balder_class

alias of ScenarioRfbHandshakingIllegalProt

class RfbServer

Bases: Device

the rfb server device

_outer_balder_class

alias of ScenarioRfbHandshakingIllegalProt

test_server_returns_illegal_rfb_protocol()

This scenario test method ensures that the client continues with a valid protocol version 3.3 in case the server sends an invalid one (test uses 002.321).

Note

Please note that the current implementation does not verify if the client knows about the protocol version 3.3. This test will be extended soon.

class balderhub.rfb.scenarios.client.handshaking.ScenarioRfbHandshakingNoSecType

Bases: Scenario

This scenario provides tests that checks if the client work as expected in case no-security type will be returned by the server.

class RfbClient

Bases: Device

the rfb client device

_outer_balder_class

alias of ScenarioRfbHandshakingNoSecType

class RfbServer

Bases: Device

the rfb server device

_outer_balder_class

alias of ScenarioRfbHandshakingNoSecType

test_server_returns_no_security_type()

This test method validates if the server provides the error message that was set by the server, because it sends no supported security types. The client should provide the error message that was sent by the server.

class balderhub.rfb.scenarios.client.handshaking.ScenarioRfbHandshakingSecHandshakeFailed

Bases: Scenario

This test scenario provides tests, that validate if the client works expected in case that the server send a failed security handshake.

class RfbClient

Bases: Device

the rfb client device

_outer_balder_class

alias of ScenarioRfbHandshakingSecHandshakeFailed

class RfbServer

Bases: Device

the rfb server device

_outer_balder_class

alias of ScenarioRfbHandshakingSecHandshakeFailed

test_server_returns_no_security_type()

This test method validates that the client works as expected, while the server sends a security type 1 (FAILED). It expects that the client shows the error message that was created and sent by the server. The client will be forced to use the security type 2 (VNC-AUTH), because the server only allows this method.

class balderhub.rfb.scenarios.client.handshaking.ScenarioRfbHandshakingSecTypeNone

Bases: Scenario

This scenario holds tests, that validates that the client works as expected by using the security type NONE (1).

class RfbClient

Bases: Device

the rfb client device

_outer_balder_class

alias of ScenarioRfbHandshakingSecTypeNone

class RfbServer

Bases: Device

the rfb server device

_outer_balder_class

alias of ScenarioRfbHandshakingSecTypeNone

test_with_auth_none()

This test method forces the client to use the security type 1 (NO-AUTHENTICATION). It validates that the client is able to connect with the server without using any authentification.

class balderhub.rfb.scenarios.client.handshaking.ScenarioRfbHandshakingSecTypeVnc

Bases: Scenario

This scenario holds tests, that validates that the client works as expected by using the security type VNC-AUTH (2).

In this authentication mode, the rfb specification only considers passwords with length of 8 characters. The scenario provides different tests that checks around this border.

class RfbClient

Bases: Device

the rfb client device

_outer_balder_class

alias of ScenarioRfbHandshakingSecTypeVnc

class RfbServer

Bases: Device

the rfb server device

_outer_balder_class

alias of ScenarioRfbHandshakingSecTypeVnc

test_with_auth_vnc_equal8chars()

This test method validates that the client works as expected, while the VNC-AUTH password has exactly 8 characters. It ensures that the client is able to connect with the server.

test_with_auth_vnc_lessthan8chars()

This test method validates that the client works as expected, while the VNC-AUTH password has less than 8 characters. It ensures that the client is able to connect with the server.

test_with_auth_vnc_morethan8chars()

This test method validates that the client works as expected, while the VNC-AUTH password has more than 8 characters. It ensures that the client is able to connect with the server.

For testing server devices

Important

Please note, that this section is not completed yet.