Skip to content

Commit

Permalink
Rename TemperatureUnit to RelativeTemperatureUnit
Browse files Browse the repository at this point in the history
  • Loading branch information
Maxcode123 committed Mar 19, 2024
1 parent 6c76acf commit 1ade978
Show file tree
Hide file tree
Showing 5 changed files with 51 additions and 51 deletions.
38 changes: 19 additions & 19 deletions src/property_utils/properties/property.py
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,8 @@ def to_si(self) -> Self:
Raises `InvalidUnitConversion` if any error occurs in the unit conversion.
>>> from property_utils.units.units import TemperatureUnit
>>> T = Property(100, TemperatureUnit.CELCIUS)
>>> from property_utils.units.units import RelativeTemperatureUnit
>>> T = Property(100, RelativeTemperatureUnit.CELCIUS)
>>> T.to_si()
<Property: 373.15 K>
"""
Expand All @@ -132,9 +132,9 @@ def to_unit(self, unit: UnitDescriptor) -> Self:
Raises `UnitConversionError` if any error occurs in the unit conversion.
>>> from property_utils.units.units import TemperatureUnit
>>> T = Property(100, TemperatureUnit.CELCIUS)
>>> T.to_unit(TemperatureUnit.FAHRENHEIT)
>>> from property_utils.units.units import RelativeTemperatureUnit
>>> T = Property(100, RelativeTemperatureUnit.CELCIUS)
>>> T.to_unit(RelativeTemperatureUnit.FAHRENHEIT)
<Property: 212.0 °F>
"""
if not unit.isinstance(self.unit.to_generic()):
Expand All @@ -160,8 +160,8 @@ def __neg__(self) -> Self:
"""
Defines negation of properties.
>>> from property_utils.units.units import TemperatureUnit
>>> T = Property(3, TemperatureUnit.CELCIUS)
>>> from property_utils.units.units import RelativeTemperatureUnit
>>> T = Property(3, RelativeTemperatureUnit.CELCIUS)
>>> -T
<Property: -3 °C>
"""
Expand Down Expand Up @@ -437,9 +437,9 @@ def __gt__(self, other) -> bool:
"""
Defines comparison between properties.
>>> from property_utils.units.units import TemperatureUnit
>>> T1 = Property(100, TemperatureUnit.CELCIUS)
>>> T2 = Property(213, TemperatureUnit.FAHRENHEIT)
>>> from property_utils.units.units import RelativeTemperatureUnit
>>> T1 = Property(100, RelativeTemperatureUnit.CELCIUS)
>>> T2 = Property(213, RelativeTemperatureUnit.FAHRENHEIT)
>>> T1 > T2
False
"""
Expand All @@ -462,9 +462,9 @@ def __ge__(self, other) -> bool:
"""
Defines comparison between properties.
>>> from property_utils.units.units import TemperatureUnit
>>> T1 = Property(100, TemperatureUnit.CELCIUS)
>>> T2 = Property(212, TemperatureUnit.FAHRENHEIT)
>>> from property_utils.units.units import RelativeTemperatureUnit
>>> T1 = Property(100, RelativeTemperatureUnit.CELCIUS)
>>> T2 = Property(212, RelativeTemperatureUnit.FAHRENHEIT)
>>> T1 >= T2
True
"""
Expand All @@ -487,9 +487,9 @@ def __lt__(self, other) -> bool:
"""
Defines comparison between properties.
>>> from property_utils.units.units import TemperatureUnit
>>> T1 = Property(100, TemperatureUnit.CELCIUS)
>>> T2 = Property(213, TemperatureUnit.FAHRENHEIT)
>>> from property_utils.units.units import RelativeTemperatureUnit
>>> T1 = Property(100, RelativeTemperatureUnit.CELCIUS)
>>> T2 = Property(213, RelativeTemperatureUnit.FAHRENHEIT)
>>> T1 < T2
True
"""
Expand All @@ -512,9 +512,9 @@ def __le__(self, other) -> bool:
"""
Defines comparison between properties.
>>> from property_utils.units.units import TemperatureUnit
>>> T1 = Property(100, TemperatureUnit.CELCIUS)
>>> T2 = Property(213, TemperatureUnit.FAHRENHEIT)
>>> from property_utils.units.units import RelativeTemperatureUnit
>>> T1 = Property(100, RelativeTemperatureUnit.CELCIUS)
>>> T2 = Property(213, RelativeTemperatureUnit.FAHRENHEIT)
>>> T1 <= T2
True
"""
Expand Down
26 changes: 13 additions & 13 deletions src/property_utils/tests/units/test_converters.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from unittest_extensions import TestCase, args

from property_utils.units.units import (
TemperatureUnit,
RelativeTemperatureUnit,
AbsoluteTemperatureUnit,
LengthUnit,
MassUnit,
Expand All @@ -16,7 +16,7 @@
PowerUnit,
)
from property_utils.units.converters import (
TemperatureUnitConverter,
RelativeTemperatureUnitConverter,
AbsoluteTemperatureUnitConverter,
LengthUnitConverter,
MassUnitConverter,
Expand Down Expand Up @@ -56,15 +56,15 @@
@add_to(TemperatureUnitConverter_test_suite)
class TestTemperatureUnitConverterConvertToReference(TestCase):
def subject(self, value, from_descriptor):
return TemperatureUnitConverter.convert(
value, from_descriptor, TemperatureUnit.CELCIUS
return RelativeTemperatureUnitConverter.convert(
value, from_descriptor, RelativeTemperatureUnit.CELCIUS
)

@args({"value": 300, "from_descriptor": AbsoluteTemperatureUnit.KELVIN})
def test_from_kelvin(self):
self.assertResultAlmost(26.85, 2)

@args({"value": 289.23, "from_descriptor": TemperatureUnit.FAHRENHEIT})
@args({"value": 289.23, "from_descriptor": RelativeTemperatureUnit.FAHRENHEIT})
def test_from_fahrenheit(self):
self.assertResultAlmost(142.905, 2)

Expand All @@ -84,19 +84,19 @@ def test_with_invalid_value(self):
@add_to(TemperatureUnitConverter_test_suite)
class TestTemperatureUnitConverterConvertFromReference(TestCase):
def subject(self, value, to_descriptor):
return TemperatureUnitConverter.convert(
value, TemperatureUnit.CELCIUS, to_descriptor
return RelativeTemperatureUnitConverter.convert(
value, RelativeTemperatureUnit.CELCIUS, to_descriptor
)

@args({"value": 100, "to_descriptor": TemperatureUnit.CELCIUS})
@args({"value": 100, "to_descriptor": RelativeTemperatureUnit.CELCIUS})
def test_to_celcius(self):
self.assertResult(100)

@args({"value": 10, "to_descriptor": AbsoluteTemperatureUnit.KELVIN})
def test_to_kelvin(self):
self.assertResult(283.15)

@args({"value": 100, "to_descriptor": TemperatureUnit.FAHRENHEIT})
@args({"value": 100, "to_descriptor": RelativeTemperatureUnit.FAHRENHEIT})
def test_to_fahrenheit(self):
self.assertResult(212)

Expand Down Expand Up @@ -124,11 +124,11 @@ def test_from_kelvin(self):
def test_from_rankine(self):
self.assertResultAlmost(450 / 1.8)

@args({"value": 25, "from_descriptor": TemperatureUnit.CELCIUS})
@args({"value": 25, "from_descriptor": RelativeTemperatureUnit.CELCIUS})
def test_from_celcius(self):
self.assertResult(298.15)

@args({"value": 212, "from_descriptor": TemperatureUnit.FAHRENHEIT})
@args({"value": 212, "from_descriptor": RelativeTemperatureUnit.FAHRENHEIT})
def test_from_fahrenheit(self):
self.assertResultAlmost(373.15)

Expand All @@ -148,11 +148,11 @@ def test_to_kelvin(self):
def test_to_rankine(self):
self.assertResult(200.50 * 1.8)

@args({"value": 10.5, "to_descriptor": TemperatureUnit.CELCIUS})
@args({"value": 10.5, "to_descriptor": RelativeTemperatureUnit.CELCIUS})
def test_to_celcius(self):
self.assertResult(-262.65)

@args({"value": 400, "to_descriptor": TemperatureUnit.FAHRENHEIT})
@args({"value": 400, "to_descriptor": RelativeTemperatureUnit.FAHRENHEIT})
def test_to_fahrenheit(self):
self.assertResultAlmost(260.33)

Expand Down
4 changes: 2 additions & 2 deletions src/property_utils/units/aliases.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
from property_utils.units.units import *

NON_DIMENSIONAL = NonDimensionalUnit.NON_DIMENSIONAL
CELCIUS = TemperatureUnit.CELCIUS
CELCIUS = RelativeTemperatureUnit.CELCIUS
KELVIN = AbsoluteTemperatureUnit.KELVIN
FAHRENHEIT = TemperatureUnit.FAHRENHEIT
FAHRENHEIT = RelativeTemperatureUnit.FAHRENHEIT
RANKINE = AbsoluteTemperatureUnit.RANKINE
MILLI_METER = LengthUnit.MILLI_METER
CENTI_METER = LengthUnit.CENTI_METER
Expand Down
28 changes: 14 additions & 14 deletions src/property_utils/units/converters.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
from property_utils.units.descriptors import UnitDescriptor
from property_utils.exceptions.units.converter_types import UnitConversionError
from property_utils.units.units import (
TemperatureUnit,
RelativeTemperatureUnit,
AbsoluteTemperatureUnit,
LengthUnit,
MassUnit,
Expand All @@ -31,7 +31,7 @@

__all__ = [
"UnitPrefix",
"TemperatureUnitConverter",
"RelativeTemperatureUnitConverter",
"AbsoluteTemperatureUnitConverter",
"LengthUnitConverter",
"MassUnitConverter",
Expand Down Expand Up @@ -83,28 +83,28 @@ def inverse(self) -> float:
return 1 / self.value


@register_converter(TemperatureUnit)
class TemperatureUnitConverter(
@register_converter(RelativeTemperatureUnit)
class RelativeTemperatureUnitConverter(
RelativeUnitConverter
): # pylint: disable=too-few-public-methods
"""
Convert temperature units with this converter.
>>> TemperatureUnitConverter.convert(100, TemperatureUnit.CELCIUS, TemperatureUnit.FAHRENHEIT)
>>> RelativeTemperatureUnitConverter.convert(100, RelativeTemperatureUnit.CELCIUS, RelativeTemperatureUnit.FAHRENHEIT)
212.0
"""

reference_unit = TemperatureUnit.CELCIUS
reference_unit = RelativeTemperatureUnit.CELCIUS
conversion_map = {
TemperatureUnit.CELCIUS: lambda t: t,
RelativeTemperatureUnit.CELCIUS: lambda t: t,
AbsoluteTemperatureUnit.KELVIN: lambda t: t - 273.15,
TemperatureUnit.FAHRENHEIT: lambda t: (t - 32) / 1.8,
RelativeTemperatureUnit.FAHRENHEIT: lambda t: (t - 32) / 1.8,
AbsoluteTemperatureUnit.RANKINE: lambda t: (t / 1.8) - 273.15,
}
reference_conversion_map = {
TemperatureUnit.CELCIUS: lambda t: t,
RelativeTemperatureUnit.CELCIUS: lambda t: t,
AbsoluteTemperatureUnit.KELVIN: lambda t: t + 273.15,
TemperatureUnit.FAHRENHEIT: lambda t: (t * 1.8) + 32,
RelativeTemperatureUnit.FAHRENHEIT: lambda t: (t * 1.8) + 32,
AbsoluteTemperatureUnit.RANKINE: lambda t: (t + 273.15) * 1.8,
}

Expand Down Expand Up @@ -134,10 +134,10 @@ def convert(
) -> float:
if not isinstance(value, (float, int)):
raise UnitConversionError(f"invalid 'value': {value}; expected numeric. ")
if from_descriptor.isinstance(TemperatureUnit) or to_descriptor.isinstance(
TemperatureUnit
):
return TemperatureUnitConverter.convert(
if from_descriptor.isinstance(
RelativeTemperatureUnit
) or to_descriptor.isinstance(RelativeTemperatureUnit):
return RelativeTemperatureUnitConverter.convert(
value, from_descriptor, to_descriptor
)
return value * cls.get_factor(from_descriptor, to_descriptor)
Expand Down
6 changes: 3 additions & 3 deletions src/property_utils/units/units.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

__all__ = [
"NonDimensionalUnit",
"TemperatureUnit",
"RelativeTemperatureUnit",
"AbsoluteTemperatureUnit",
"LengthUnit",
"MassUnit",
Expand All @@ -35,7 +35,7 @@ def si(cls) -> "NonDimensionalUnit":
return cls.NON_DIMENSIONAL


class TemperatureUnit(MeasurementUnit):
class RelativeTemperatureUnit(MeasurementUnit):
CELCIUS = "°C"
FAHRENHEIT = "°F"

Expand All @@ -56,7 +56,7 @@ def si(cls) -> "AbsoluteTemperatureUnit":
return cls.KELVIN

def isinstance(self, generic: GenericUnitDescriptor) -> bool:
return super().isinstance(generic) or generic == TemperatureUnit
return super().isinstance(generic) or generic == RelativeTemperatureUnit


class LengthUnit(MeasurementUnit):
Expand Down

0 comments on commit 1ade978

Please sign in to comment.