monkey/envs/monkey_zoo/blackbox/test_blackbox.py

45 lines
1.2 KiB
Python
Raw Normal View History

2019-08-28 19:56:35 +08:00
import os
2019-08-27 20:52:39 +08:00
import unittest
2019-08-27 23:12:14 +08:00
from .gcp_machine_handlers import GCPHandler
2019-08-27 20:52:39 +08:00
2019-08-27 21:23:09 +08:00
import requests
from config import *
2019-08-27 20:52:39 +08:00
2019-08-28 19:56:35 +08:00
def generic_blackbox_test_case(config_file_path, analyzers):
load_config_into_server(config_file_path)
run_local_monkey_on_island()
for analyzer in analyzers:
assert analyzer.analyze_test_results()
2019-08-27 20:52:39 +08:00
class TestMonkeyBlackbox(unittest.TestCase):
2019-08-27 23:12:14 +08:00
2019-08-27 20:52:39 +08:00
@classmethod
def setUpClass(cls):
2019-08-27 23:12:14 +08:00
GCPHandler().start_machines("elastic-4")
2019-08-27 20:52:39 +08:00
print("Setting up all GCP machines...")
@classmethod
def tearDownClass(cls):
2019-08-27 23:12:14 +08:00
GCPHandler().stop_machines("elastic-4")
2019-08-27 20:52:39 +08:00
print("Killing all GCP machines...")
2019-08-28 19:56:35 +08:00
def test_ssh_exec(self):
conf_file_name = "ssh.conf"
generic_blackbox_test_case(get_conf_file_path(conf_file_name), [])
def run_local_monkey_on_island():
print("Trying to run local monkey on {}".format(ISLAND_SERVER_ADDRESS))
print(ISLAND_SERVER_URL + "api")
def load_config_into_server(config_file_path):
print("uploading {} to {}".format(config_file_path, ISLAND_SERVER_ADDRESS))
2019-08-27 21:23:09 +08:00
2019-08-28 19:56:35 +08:00
def get_conf_file_path(conf_file_name):
return os.path.join(os.path.dirname(os.path.abspath(__file__)), "island_configs", conf_file_name)