def test_add_host(): destroy_model() create_model('test-model') add_host('foo') assert len(get_model().hosts()) == 1 assert get_model().hosts()[0]['name'] == 'foo'
def test_name_resolving(): destroy_model() create_model('test-model') destroy_laboratory() create_laboratory('test-lab') h = add_host('test1') d = add_device('node1') he = h.add_interface('eth') de = d.add_interface('eth1') assert h == resolve_host_name('test1') assert d == resolve_device_name('node1') assert he == resolve_interface_name('test1.eth', model=True) assert he == resolve_interface_name('test1.eth') assert de == resolve_interface_name('node1.eth1', laboratory=True) assert de == resolve_interface_name('node1.eth1') py.test.raises(Exceptions.ConfigurationError, resolve_host_name, 'foo') py.test.raises(Exceptions.ConfigurationError, resolve_host_name, 'node1') py.test.raises(Exceptions.ConfigurationError, resolve_host_name, 'test1.') py.test.raises(Exceptions.ConfigurationError, resolve_host_name, 'test1 ') py.test.raises(Exceptions.ConfigurationError, resolve_host_name, '.test1') py.test.raises(Exceptions.ConfigurationError, resolve_device_name, 'foo') py.test.raises(Exceptions.ConfigurationError, resolve_device_name, 'test1') py.test.raises(Exceptions.ConfigurationError, resolve_device_name, 'node1.') py.test.raises(Exceptions.ConfigurationError, resolve_device_name, 'node1 ') py.test.raises(Exceptions.ConfigurationError, resolve_device_name, '.node1') py.test.raises(Exceptions.ConfigurationError, resolve_interface_name, 'node1.eth1', model=True) py.test.raises(Exceptions.ConfigurationError, resolve_interface_name, 'test1.eth', laboratory=True)
def test_link_by_name(): destroy_model() create_model('test-model') t1 = add_host('test1') t2 = add_host('test2') t1.add_interface('eth1') t2.add_interface('eth2') py.test.raises(Exceptions.ConfigurationError, add_link, 'foo', 'bar') py.test.raises(Exceptions.ConfigurationError, add_link, 'test1', 'test2') py.test.raises(Exceptions.ConfigurationError, add_link, 'test1.', 'test2.') py.test.raises(Exceptions.ConfigurationError, add_link, 'test1.eth2', 'test2.eth1') py.test.raises(Exceptions.ConfigurationError, add_link, 'test1.eth1', 'test2.eth1') link = add_link('test1.eth1', 'test2.eth2') assert link.first() == t1.interface('eth1') assert link.second() == t2.interface('eth2')
def group(name, count): g = [] for i in range(count): g.append(add_host("%s[%i]" % (name, i))) return g
def test_no_duplicates(): destroy_model() create_model('test-model') add_host('foo') py.test.raises(Exceptions.NameExistsError, add_host, 'foo')