コード例 #1
0
def test_up(create_Nodes):
    #create network
    # network1 = create_Network
    network4 = Network("opel")
    assert network4.user == "opel"
    assert network4.jobs == {}
    Node1, = list(create_Nodes(1))
    Node1.ip = "198.168.4.1" #for windows
    network4.add_node(Node1)
    #test function
    network4.up("198.168.4.1") 
    assert Node1.active == True
    with pytest.raises(RuntimeError) as excinfo:
        network4.up("NodeNotExisting")
    assert f"Node with NodeNotExisting does not exist in Network database." in str(excinfo)
コード例 #2
0
ファイル: test_preference.py プロジェクト: CN-UPB/MARVELO
def test_preference():
    #creating Network
    network1 = Network("pi")
    Node1 = BaseNode("192.168.4.1")
    Node2 = BaseNode("192.168.4.2")
    Node3 = BaseNode("192.168.4.3")
    Job1 = BaseJob(outputs=[BasePipe(1)])
    Job2 = BaseJob(inputs=[BasePipe(1)],outputs=[BasePipe(2)])
    Job3 = SquaredJob(inputs=[BasePipe(2)])
        
    #---
    Node1.ip = "192.168.4.1"
    Node2.ip = "192.168.4.2"
    Node3.ip = "192.168.4.3"
    #---
    network1.add_job(Job1)
    network1.add_job(Job2)
    network1.add_job(Job3)
    network1.add_node(Node1)
    network1.add_node(Node2)
    network1.add_node(Node3)

    for job in JOBS.values():
        #convert to GROUPS
        if isinstance(job.GROUPS, str):
            BaseGroup(job.GROUPS).add_job(job)
        elif isinstance(job.GROUPS, list):
            for g in job.GROUPS:
                BaseGroup(g).add_job(job)

    for node in NODES.values():
        if isinstance(node.GROUPS, str):
            BaseGroup(node.GROUPS).add_node(node)
        elif isinstance(node.GROUPS, list):
            for g in node.GROUPS:
                BaseGroup(g).add_node(node)
    
    #Iinitalze Nodes
    #Node 1 and 2 will be alive, Node 3 will die
    #---
    Node1.max_jobs = 4
    Node2.max_jobs = 4
    Node3.max_jobs = 4
    #---
    Node1.add_jobs([Job1])
    Node2.add_jobs([Job2])
    Node3.add_jobs([Job3])
    network1.up("192.168.4.1")
    network1.up("192.168.4.2")
    network1.up("192.168.4.3")
    Node1.mac = "m1:b1:c1:z1"
    Node2.mac = "m2:b2:c2:z2"
    Node3.mac = "m3:b3:c3:z3"
    Node1.routing_table = {"mac": "m2:b2:c2:z2" , "TQ": 198}
    Node2.routing_table = {"mac": "m1:b1:c1:z1" , "TQ": 198}
    Node1._avg_info = {"cpu": 89, "memory": None, "disk": None, "swap": 0} 
    Node2._avg_info = {"cpu": 91, "memory": None, "disk": None, "swap": 70}
    
    network1.down("192.168.4.3")

    node = network1.allocate_jobs(ssh= False)
    assert node == [Node2]
    assert len(Node2.jobs) == 2
    assert len(Node3.jobs) == 0