コード例 #1
0
 def test_get_prefix_from_user_input_name_internal(self):
     # Set up prefix group
     test_repo = ConvertRepo()
     prefix_group = ConvertPrefixGroup(test_repo, "test_group")
     prefix_name1 = "test_name1"
     prefix_abbr1 = "test_abbr1"
     prefix_mult1 = 1001
     test_prefix1 = ConvertPrefix(prefix_group, prefix_name1, prefix_abbr1, prefix_mult1)
     prefix_name2 = "test_name2"
     prefix_abbr2 = "test_abbr2"
     prefix_mult2 = 1002
     test_prefix2 = ConvertPrefix(prefix_group, prefix_name2, prefix_abbr2, prefix_mult2)
     prefix_group.add_prefix(test_prefix1)
     prefix_group.add_prefix(test_prefix2)
     # Set up test object
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_unit_names = ["name1", "cubic {X}name2", "NaMe3"]
     test_value = 1337
     test_unit = ConvertUnit(test_type, test_unit_names, test_value)
     test_unit.add_abbr("ABbr1")
     test_unit.add_abbr("abbr2")
     test_unit.valid_prefix_group = prefix_group
     # Get prefix from input
     assert test_unit.get_prefix_from_user_input("cubic test_name1name2") == test_prefix1
     assert test_unit.get_prefix_from_user_input("cubic test_name1not_a_unit") is False
     assert test_unit.get_prefix_from_user_input("cubic not_a_prefixname2") is False
     assert test_unit.get_prefix_from_user_input("cubic name2") is None
     # Remove prefix group and see what happens
     test_unit.valid_prefix_group = None
     assert test_unit.get_prefix_from_user_input("cubic test_name1name2") is False
コード例 #2
0
 def test_xml(self):
     # Set up test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_repo.add_type(test_type)
     prefix_group = ConvertPrefixGroup(test_repo, "test_group")
     test_repo.add_prefix_group(prefix_group)
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_unit_names = ["name1", "name2"]
     test_value = 1337
     # Create test unit
     test_unit = ConvertUnit(test_type, test_unit_names, test_value)
     test_unit.set_offset(10)
     test_unit.add_abbr("abbr1")
     test_unit.valid_prefix_group = prefix_group
     # Convert to XML and back
     test_xml = test_unit.to_xml()
     xml_unit = ConvertUnit.from_xml(test_type, test_xml)
     assert len(test_unit.abbr_list) == 1
     assert "abbr1" in xml_unit.abbr_list
     assert xml_unit.type == test_type
     assert len(test_unit.name_list) == 2
     assert "name1" in xml_unit.name_list
     assert "name2" in xml_unit.name_list
     assert xml_unit.value == test_value
     assert xml_unit.offset == 10
     assert xml_unit.last_updated == test_unit.last_updated
     assert xml_unit.valid_prefix_group == prefix_group
コード例 #3
0
 def test_set_offset(self):
     # Set up test object
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_unit_names = ["name1", "name2"]
     test_value = 1337
     test_unit = ConvertUnit(test_type, test_unit_names, test_value)
     # Check value and time updated
     assert test_unit.offset == 0
     assert test_unit.last_updated is None
     # Change value
     test_unit.set_offset(10)
     # Check value
     assert test_unit.offset == 10
     assert test_unit.last_updated is not None
コード例 #4
0
ファイル: testConvertType.py プロジェクト: joshcoales/Hallo
 def test_get_unit_by_name(self):
     # Set up test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_unitb = ConvertUnit(test_type, ["base_unit"], 1)
     test_type.base_unit = test_unitb
     test_unit1 = ConvertUnit(test_type, ["name1", "name2"], 1337)
     test_unit2 = ConvertUnit(test_type, ["name3", "name4"], 505)
     test_unit2.add_abbr("u2")
     test_type.add_unit(test_unit1)
     test_type.add_unit(test_unit2)
     # test some stuff
     assert test_type.get_unit_by_name("base_unit") == test_unitb
     assert test_type.get_unit_by_name("NAME1") == test_unit1
     assert test_type.get_unit_by_name("NaMe4") == test_unit2
     assert test_type.get_unit_by_name("u2") == test_unit2
コード例 #5
0
 def test_remove_name(self):
     # Set up test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_unit_names = ["name1", "name2"]
     test_value = 1337
     test_unit = ConvertUnit(test_type, test_unit_names, test_value)
     # Test setup
     assert test_unit.name_list == test_unit_names
     assert len(test_unit.name_list) == 2
     # Remove name
     test_unit.remove_name("name1")
     # Test changes
     assert len(test_unit.name_list) == 1
     assert "name2" in test_unit.name_list
     assert "name1" not in test_unit.name_list
コード例 #6
0
 def test_to_string(self):
     # Setup test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_type.decimals = 3
     test_unit = ConvertUnit(test_type, ["name1", "name2"], 1337)
     prefix_group = ConvertPrefixGroup(test_repo, "test_group")
     test_prefix = ConvertPrefix(prefix_group, "ten", "10", 10)
     prefix_group.add_prefix(test_prefix)
     test_unit.valid_prefix_group = prefix_group
     measure1 = ConvertMeasure(17.5, test_unit)
     # Get string
     measure_str = measure1.to_string()
     # Check
     assert str(measure1) == measure_str
     assert measure_str == "1.750 tenname1"
コード例 #7
0
 def test_build_list_from_user_input_prefix(self):
     # Setup test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_repo.add_type(test_type)
     test_unit = ConvertUnit(test_type, ["name1", "name2"], 1337)
     test_type.add_unit(test_unit)
     prefix_group = ConvertPrefixGroup(test_repo, "test_group")
     test_prefix = ConvertPrefix(prefix_group, "ten", "10", 10)
     prefix_group.add_prefix(test_prefix)
     test_unit.valid_prefix_group = prefix_group
     # Run method
     data = ConvertMeasure.build_list_from_user_input(test_repo, "tenname2 27")
     # Check results
     assert len(data) == 1
     assert data[0].amount == 270
     assert data[0].unit == test_unit
コード例 #8
0
 def test_to_string_with_prefix(self):
     # Setup test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_type.decimals = 3
     test_unit = ConvertUnit(test_type, ["name1", "name2"], 1337)
     prefix_group = ConvertPrefixGroup(test_repo, "test_group")
     test_prefix1 = ConvertPrefix(prefix_group, "ten", "10", 10)
     test_prefix2 = ConvertPrefix(prefix_group, "hundred", "100", 100)
     prefix_group.add_prefix(test_prefix1)
     prefix_group.add_prefix(test_prefix2)
     test_unit.valid_prefix_group = prefix_group
     measure1 = ConvertMeasure(17.5, test_unit)
     # Get string
     measure_str = measure1.to_string_with_prefix(test_prefix2)
     # Check
     assert measure_str == "0.175 hundredname1"
コード例 #9
0
 def test_remove_abbr(self):
     # Set up test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_unit_names = ["name1", "name2"]
     test_value = 1337
     test_unit = ConvertUnit(test_type, test_unit_names, test_value)
     test_unit.add_abbr("abbr1")
     test_unit.add_abbr("abbr2")
     # Test setup
     assert "abbr1" in test_unit.abbr_list
     assert "abbr2" in test_unit.abbr_list
     assert len(test_unit.abbr_list) == 2
     # Remove abbreviation
     test_unit.remove_abbr("abbr1")
     # Test changes
     assert len(test_unit.abbr_list) == 1
     assert "abbr2" in test_unit.abbr_list
     assert "abbr1" not in test_unit.abbr_list
コード例 #10
0
ファイル: testConvertType.py プロジェクト: joshcoales/Hallo
 def test_json(self):
     # Set up test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.decimals = 4
     test_unitb = ConvertUnit(test_type, ["base_unit"], 1)
     test_type.base_unit = test_unitb
     test_unit1 = ConvertUnit(test_type, ["name1", "name2"], 1337)
     test_unit2 = ConvertUnit(test_type, ["name3", "name4"], 505)
     test_unit2.add_abbr("u2")
     test_type.add_unit(test_unit1)
     test_type.add_unit(test_unit2)
     # Collapse to XML and rebuild
     test_json = test_type.to_json()
     rebuild_type = ConvertType.from_json(test_repo, test_json)
     # Test the type
     assert rebuild_type.repo == test_repo
     assert len(rebuild_type.unit_list) == 2
     assert rebuild_type.name == "test_type"
     assert rebuild_type.decimals == 4
     assert rebuild_type.base_unit.name_list[0] == "base_unit"
コード例 #11
0
 def test_has_name(self):
     # Set up test object
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_unit_names = ["name1", "name2", "NaMe3"]
     test_value = 1337
     test_unit = ConvertUnit(test_type, test_unit_names, test_value)
     test_unit.add_abbr("ABbr1")
     test_unit.add_abbr("abbr2")
     # Do some tests
     assert test_unit.has_name("name1")
     assert test_unit.has_name("name3")
     assert test_unit.has_name("NamE2")
     assert not test_unit.has_name("name4")
     assert test_unit.has_name("abbr1")
     assert test_unit.has_name("ABBR2")
     assert not test_unit.has_name("abbr3")
コード例 #12
0
 def test_convert_to_offset(self):
     # Setup test objects
     test_repo = ConvertRepo()
     test_type = ConvertType(test_repo, "test_type")
     test_type.base_unit = ConvertUnit(test_type, ["base_unit"], 1)
     test_unit1 = ConvertUnit(test_type, ["name1", "name2"], 1337)
     test_unit1.update_offset(54)
     test_unit2 = ConvertUnit(test_type, ["name3"], 505)
     test_unit2.update_offset(10)
     measure1 = ConvertMeasure(17.5, test_unit1)
     # Convert to base
     test_result = measure1.convert_to(test_unit2)
     # Check
     assert test_result.unit.name_list[0] == "name3"
     assert test_result.amount == ((17.5*1337)+54-10)/505