1208
1208
node.start_deployment()
1209
1209
self.assertEqual(NODE_STATUS.DEPLOYING, reload_object(node).status)
1211
def test_add_tags(self):
1212
node = factory.make_Node()
1213
other_node = factory.make_Node()
1214
tags = [factory.make_Tag() for _ in xrange(3)]
1217
{tag.name for tag in tags},
1218
{tag.name for tag in node.tags.all()})
1219
# Tags are added only to the specified node.
1220
self.assertItemsEqual(
1221
[], [tag.name for tag in other_node.tags.all()])
1223
def test_remove_tags(self):
1224
node = factory.make_Node()
1225
other_node = factory.make_Node()
1226
tags = [factory.make_Tag() for _ in xrange(3)]
1228
other_node.add_tags(tags)
1229
# Remove the first two tags.
1230
node.remove_tags(tags[:2])
1231
self.assertItemsEqual(
1232
{tag.name for tag in tags[2:]},
1233
{tag.name for tag in node.tags.all()})
1234
# Tags are removed only from the specified node.
1235
self.assertItemsEqual(
1236
{tag.name for tag in tags},
1237
{tag.name for tag in other_node.tags.all()})
1239
def test_clear_tags(self):
1240
node = factory.make_Node()
1241
other_node = factory.make_Node()
1242
tags = [factory.make_Tag() for _ in xrange(3)]
1244
other_node.add_tags(tags)
1247
self.assertItemsEqual(
1248
[], [tag.name for tag in node.tags.all()])
1249
# Tags are cleared only from the specified node.
1250
self.assertItemsEqual(
1251
{tag.name for tag in tags},
1252
{tag.name for tag in other_node.tags.all()})
1212
1255
class NodeRoutersTest(MAASServerTestCase):