def test_create_table(): slurm_nodes = [ SlurmNode(name="foo-1", state="idle", state_flag=None, features={}, reason=""), SlurmNode(name="foo-2", state="idle", state_flag="~", features={}, reason=""), ] cloud_nodes = [ AwsNode(name="foo-1", state=NodeState.RUNNING, ip="10.0.0.25", id="i-foobar") ] table, headers = create_table(slurm_nodes, cloud_nodes) assert table == [ ["foo-1", "idle", "", NodeState.RUNNING], ["foo-2", "idle", "power save", None], ] assert headers == ["Name", "Slurm state", "Flag", "Cloud state"]
def test_crosscheck_one_match(): slurm_nodes = [ SlurmNode(name="foo-1", state="idle", state_flag=None, features={}, reason="") ] cloud_nodes = [AwsNode(name="foo-1", state=NodeState.RUNNING, ip="10.0.0.25", id="i-foobar")] res = crosscheck(slurm_nodes, cloud_nodes) res = list(res) assert not res
def test_print_table(): slurm_nodes = [ SlurmNode(name="foo-1", state="idle", state_flag=None, features={}, reason="") ] cloud_nodes = [ AwsNode(name="foo-1", state=NodeState.RUNNING, ip="10.0.0.25", id="i-foobar") ] table_data = create_table(slurm_nodes, cloud_nodes) print(tabulate(table_data))
def test_all_nodes(ec2, nodespace): launch_node("foo", ec2, nodespace) nodes = AwsNode.all(ec2, nodespace) assert len(nodes) == 1
def test_all_nodes_empty(ec2, nodespace): assert AwsNode.all(ec2, nodespace) == []
def test_awsnode(ec2, nodespace): launch_node("foo", ec2, nodespace) node = AwsNode.from_name("foo", ec2, nodespace) assert node.name == "foo" assert node.state == NodeState.RUNNING