def test_reset(self): x = ContinuousVariable("x") desc = owcolor.AttrDesc(x) desc.reset() self.assertEqual(desc.name, "x") desc.name = "y" desc.reset() self.assertEqual(desc.name, "x")
def test_name(self): x = ContinuousVariable("x") desc = owcolor.AttrDesc(x) self.assertEqual(desc.name, "x") desc.name = "y" self.assertEqual(desc.name, "y") desc.name = None self.assertEqual(desc.name, "x")
def test_to_dict(self): x = ContinuousVariable("x") desc = owcolor.AttrDesc(x) self.assertEqual(desc.to_dict(), {}) desc2, warns = owcolor.AttrDesc.from_dict(x, desc.to_dict()) self.assertEqual(warns, []) self.assertIsNone(desc2.new_name) desc.name = "y" self.assertEqual(desc.to_dict(), {"rename": "y"}) desc2, warns = owcolor.AttrDesc.from_dict(x, desc.to_dict()) self.assertEqual(warns, []) self.assertEqual(desc2.new_name, "y") self.assertRaises(owcolor.InvalidFileFormat, owcolor.AttrDesc.from_dict, x, {"rename": 42}) self.assertRaises(owcolor.InvalidFileFormat, owcolor.AttrDesc.from_dict, x, []) # Additional keys shouldn't cause exceptions owcolor.AttrDesc.from_dict(x, {"foo": 42})