Exemplo n.º 1
0
    def test_alias(self):
        # Use load_definitions
        ureg = UnitRegistry([
            "canonical = [] = can = alias1 = alias2\n",
            # overlapping aliases
            "@alias canonical = alias2 = alias3\n",
            # Against another alias
            "@alias alias3 = alias4\n",
        ])

        # Use define
        ureg.define("@alias canonical = alias5")

        # Test that new aliases work
        # Test that pre-existing aliases and symbol are not eliminated
        for a in ("can", "alias1", "alias2", "alias3", "alias4", "alias5"):
            self.assertEqual(ureg.Unit(a), ureg.Unit("canonical"))

        # Test that aliases defined multiple times are not duplicated
        self.assertEqual(
            ureg._units["canonical"].aliases,
            ("alias1", "alias2", "alias3", "alias4", "alias5"),
        )

        # Define against unknown name
        self.assertRaises(KeyError, ureg.define, "@alias notexist = something")
Exemplo n.º 2
0
 def test_base(self):
     ureg = UnitRegistry(None)
     ureg.define("meter = [length]")
     self.assertRaises(DefinitionSyntaxError, ureg.define,
                       "meter = [length]")
     self.assertRaises(TypeError, ureg.define, list())
     ureg.define("degC = kelvin; offset: 273.15")
Exemplo n.º 3
0
 def test_base(self):
     ureg = UnitRegistry(None)
     ureg.define("meter = [length]")
     with pytest.raises(DefinitionSyntaxError):
         ureg.define("meter = [length]")
     with pytest.raises(TypeError):
         ureg.define(list())
     ureg.define("degC = kelvin; offset: 273.15")
Exemplo n.º 4
0
 def test_base(self):
     ureg = UnitRegistry(None)
     ureg.define('meter = [length]')
     self.assertRaises(ValueError, ureg.define, 'meter = [length]')
     self.assertRaises(TypeError, ureg.define, list())
     x = ureg.define('degC = kelvin; offset: 273.15')
Exemplo n.º 5
0
 def test_base(self):
     ureg = UnitRegistry(None)
     ureg.define('meter = [length]')
     self.assertRaises(ValueError, ureg.define, 'meter = [length]')
     self.assertRaises(TypeError, ureg.define, list())
     x = ureg.define('degC = kelvin; offset: 273.15')