334
334
after_commissioning_action, node.after_commissioning_action)
335
335
self.assertEqual(power_type, node.power_type)
337
def test_AdminNodeForm_refuses_to_update_hostname_on_allocated_node(self):
338
old_name = factory.make_name('old-hostname')
339
new_name = factory.make_name('new-hostname')
340
node = factory.make_node(
341
hostname=old_name, status=NODE_STATUS.ALLOCATED)
342
form = AdminNodeForm(
344
'hostname': new_name,
345
'architecture': node.architecture,
348
self.assertFalse(form.is_valid())
350
["Can't change hostname to %s: node is in use." % new_name],
351
form._errors['hostname'])
353
def test_AdminNodeForm_accepts_unchanged_hostname_on_allocated_node(self):
354
old_name = factory.make_name('old-hostname')
355
node = factory.make_node(
356
hostname=old_name, status=NODE_STATUS.ALLOCATED)
357
form = AdminNodeForm(
359
'hostname': old_name,
360
'architecture': node.architecture,
363
self.assertTrue(form.is_valid(), form._errors)
365
self.assertEqual(old_name, reload_object(node).hostname)
367
def test_AdminNodeForm_accepts_omitted_hostname_on_allocated_node(self):
368
node = factory.make_node(status=NODE_STATUS.ALLOCATED)
369
old_name = node.hostname
370
form = AdminNodeForm(
372
'architecture': node.architecture,
375
self.assertTrue(form.is_valid())
377
self.assertEqual(old_name, reload_object(node).hostname)
337
379
def test_remove_None_values_removes_None_values_in_dict(self):
338
380
random_input = factory.getRandomString()
339
381
self.assertEqual(