#2887 - Final test changes before end of day
This commit is contained in:
@@ -12,12 +12,12 @@ def test_passing_actions_down(monkeypatch) -> None:
|
|||||||
|
|
||||||
sim = Simulation()
|
sim = Simulation()
|
||||||
|
|
||||||
pc1 = Computer(hostname="PC-1", ip_address="10.10.1.1", subnet_mask="255.255.255.0")
|
pc1 = Computer.from_config(config={"type":"computer", "hostname":"PC-1", "ip_address":"10.10.1.1", "subnet_mask":"255.255.255.0"})
|
||||||
pc1.start_up_duration = 0
|
pc1.start_up_duration = 0
|
||||||
pc1.power_on()
|
pc1.power_on()
|
||||||
pc2 = Computer(hostname="PC-2", ip_address="10.10.1.2", subnet_mask="255.255.255.0")
|
pc2 = Computer.from_config(config={"type":"computer", "hostname":"PC-2", "ip_address":"10.10.1.2", "subnet_mask":"255.255.255.0"})
|
||||||
srv = Server(hostname="WEBSERVER", ip_address="10.10.1.100", subnet_mask="255.255.255.0")
|
srv = Server.from_config(config={"type":"server", "hostname":"WEBSERVER", "ip_address":"10.10.1.100", "subnet_mask":"255.255.255.0"})
|
||||||
s1 = Switch(hostname="switch1")
|
s1 = Switch.from_config(config={"type":"switch", "hostname":"switch1"})
|
||||||
|
|
||||||
for n in [pc1, pc2, srv, s1]:
|
for n in [pc1, pc2, srv, s1]:
|
||||||
sim.network.add_node(n)
|
sim.network.add_node(n)
|
||||||
@@ -48,6 +48,6 @@ def test_passing_actions_down(monkeypatch) -> None:
|
|||||||
assert not action_invoked
|
assert not action_invoked
|
||||||
|
|
||||||
# call the patched method
|
# call the patched method
|
||||||
sim.apply_request(["network", "node", pc1.hostname, "file_system", "folder", "downloads", "repair"])
|
sim.apply_request(["network", "node", pc1.config.hostname, "file_system", "folder", "downloads", "repair"])
|
||||||
|
|
||||||
assert action_invoked
|
assert action_invoked
|
||||||
|
|||||||
@@ -34,52 +34,54 @@ def basic_network() -> Network:
|
|||||||
|
|
||||||
# Creating two generic nodes for the C2 Server and the C2 Beacon.
|
# Creating two generic nodes for the C2 Server and the C2 Beacon.
|
||||||
|
|
||||||
node_a = Computer(
|
node_a_cfg = {"type": "computer",
|
||||||
hostname="node_a",
|
"hostname": "node_a",
|
||||||
ip_address="192.168.0.2",
|
"ip_address": "192.168.0.2",
|
||||||
subnet_mask="255.255.255.252",
|
"subnet_mask": "255.255.255.252",
|
||||||
default_gateway="192.168.0.1",
|
"default_gateway": "192.168.0.1",
|
||||||
start_up_duration=0,
|
"start_up_duration": 0}
|
||||||
)
|
|
||||||
|
node_a: Computer = Computer.from_config(config=node_a_cfg)
|
||||||
node_a.power_on()
|
node_a.power_on()
|
||||||
node_a.software_manager.get_open_ports()
|
node_a.software_manager.get_open_ports()
|
||||||
node_a.software_manager.install(software_class=C2Server)
|
node_a.software_manager.install(software_class=C2Server)
|
||||||
|
|
||||||
node_b = Computer(
|
node_b_cfg = {"type": "computer",
|
||||||
hostname="node_b",
|
"hostname": "node_b",
|
||||||
ip_address="192.168.255.2",
|
"ip_address": "192.168.255.2",
|
||||||
subnet_mask="255.255.255.248",
|
"subnet_mask": "255.255.255.248",
|
||||||
default_gateway="192.168.255.1",
|
"default_gateway": "192.168.255.1",
|
||||||
start_up_duration=0,
|
"start_up_duration": 0}
|
||||||
)
|
|
||||||
|
node_b: Computer = Computer.from_config(config=node_b_cfg)
|
||||||
node_b.power_on()
|
node_b.power_on()
|
||||||
node_b.software_manager.install(software_class=C2Beacon)
|
node_b.software_manager.install(software_class=C2Beacon)
|
||||||
|
|
||||||
# Creating a generic computer for testing remote terminal connections.
|
# Creating a generic computer for testing remote terminal connections.
|
||||||
node_c = Computer(
|
node_c_cfg = {"type": "computer",
|
||||||
hostname="node_c",
|
"hostname": "node_c",
|
||||||
ip_address="192.168.255.3",
|
"ip_address": "192.168.255.3",
|
||||||
subnet_mask="255.255.255.248",
|
"subnet_mask": "255.255.255.248",
|
||||||
default_gateway="192.168.255.1",
|
"default_gateway": "192.168.255.1",
|
||||||
start_up_duration=0,
|
"start_up_duration": 0}
|
||||||
)
|
|
||||||
|
node_c: Computer = Computer.from_config(config=node_c_cfg)
|
||||||
node_c.power_on()
|
node_c.power_on()
|
||||||
|
|
||||||
# Creating a router to sit between node 1 and node 2.
|
# Creating a router to sit between node 1 and node 2.
|
||||||
router = Router(hostname="router", num_ports=3, start_up_duration=0)
|
router = Router.from_config(config={"type":"router", "hostname":"router", "num_ports":3, "start_up_duration":0})
|
||||||
# Default allow all.
|
# Default allow all.
|
||||||
router.acl.add_rule(action=ACLAction.PERMIT)
|
router.acl.add_rule(action=ACLAction.PERMIT)
|
||||||
router.power_on()
|
router.power_on()
|
||||||
# Creating switches for each client.
|
# Creating switches for each client.
|
||||||
switch_1 = Switch(hostname="switch_1", num_ports=6, start_up_duration=0)
|
switch_1 = Switch.from_config(config={"type":"switch", "hostname":"switch_1", "num_ports":6, "start_up_duration":0})
|
||||||
switch_1.power_on()
|
switch_1.power_on()
|
||||||
|
|
||||||
# Connecting the switches to the router.
|
# Connecting the switches to the router.
|
||||||
router.configure_port(port=1, ip_address="192.168.0.1", subnet_mask="255.255.255.252")
|
router.configure_port(port=1, ip_address="192.168.0.1", subnet_mask="255.255.255.252")
|
||||||
network.connect(endpoint_a=router.network_interface[1], endpoint_b=switch_1.network_interface[6])
|
network.connect(endpoint_a=router.network_interface[1], endpoint_b=switch_1.network_interface[6])
|
||||||
|
|
||||||
switch_2 = Switch(hostname="switch_2", num_ports=6, start_up_duration=0)
|
switch_2 = Switch.from_config(config={"type":"switch", "hostname":"switch_2", "num_ports":6, "start_up_duration":0})
|
||||||
switch_2.power_on()
|
switch_2.power_on()
|
||||||
|
|
||||||
network.connect(endpoint_a=router.network_interface[2], endpoint_b=switch_2.network_interface[6])
|
network.connect(endpoint_a=router.network_interface[2], endpoint_b=switch_2.network_interface[6])
|
||||||
|
|||||||
Reference in New Issue
Block a user