def test_wrapped_with_input_units(self):
        """ Does wrapped function with inputs behave like non-wrapped function?

        """
        def func(value):
            return value

        decorater = has_units(inputs="value: a value: units=m/s;")
        func_wrapped = decorater(func)

        self.assertEqual(func(1), func_wrapped(1))
示例#2
0
    def test_wrapped_behaves_like_unwrapped(self):
        """ Does wrapped function behave like non-wrapped function.

        """
        def func(value):
            return value

        decorater = has_units()
        func_wrapped = decorater(func)

        self.assertEqual(func(1),func_wrapped(1))
    def test_wrapped_behaves_like_unwrapped(self):
        """ Does wrapped function behave like non-wrapped function.

        """
        def func(value):
            return value

        decorater = has_units()
        func_wrapped = decorater(func)

        self.assertEqual(func(1), func_wrapped(1))
示例#4
0
    def test_wrapped_with_input_units(self):
        """ Does wrapped function with inputs behave like non-wrapped function?

        """

        def func(value):
            return value

        decorater = has_units(inputs="value: a value: units=m/s;")
        func_wrapped = decorater(func)

        self.assertEqual(func(1),func_wrapped(1))
    def test_wrapped_with_output_units(self):
        """ Does wrapped function with outputs behave like non-wrapped function?

        """
        def func(value):
            return value

        decorater = has_units(outputs="value: a value: units=m/s;")
        func_wrapped = decorater(func)

        arg = array((1, 2, 3))
        std = func(arg)
        actual = func_wrapped(arg)
        self.assertEqual(std, actual)
示例#6
0
    def test_wrapped_with_output_units(self):
        """ Does wrapped function with outputs behave like non-wrapped function?

        """

        def func(value):
            return value

        decorater = has_units(outputs="value: a value: units=m/s;")
        func_wrapped = decorater(func)

        arg = array((1,2,3))
        std = func(arg)
        actual = func_wrapped(arg)
        self.assertEqual(std,actual)
    def test_wrapped_with_two_output_units(self):
        """ Are two outputs handled correctly?

        """
        def func(v1, v2):
            return v1, v2

        decorater = has_units(outputs="""v1: a value: units=m/s;
                                        v2: another value: units=ft/s;
                                     """)
        func_wrapped = decorater(func)

        arg = array((1, 2, 3))
        std_v1, std_v2 = func(arg, arg + 1)
        actual_v1, actual_v2 = func_wrapped(arg, arg + 1)
        self.assertEqual(std_v1, actual_v1)
        self.assertEqual(std_v2, actual_v2)
示例#8
0
    def test_wrapped_with_two_output_units(self):
        """ Are two outputs handled correctly?

        """

        def func(v1, v2):
            return v1, v2

        decorater = has_units(outputs="""v1: a value: units=m/s;
                                        v2: another value: units=ft/s;
                                     """)
        func_wrapped = decorater(func)

        arg = array((1,2,3))
        std_v1, std_v2 = func(arg, arg+1)
        actual_v1, actual_v2 = func_wrapped(arg, arg+1)
        self.assertEqual(std_v1, actual_v1)
        self.assertEqual(std_v2, actual_v2)
    x : scalar : units=m
        X
    y : scalar : units=s
        Y

    Returns
    -------
    z : scalar : units=m/s
    """
    assert not isinstance(x, (UnitArray, UnitScalar))
    assert not isinstance(y, (UnitArray, UnitScalar))
    z = x / y
    return z


foo_with_units = has_units(foo)


def bar(x, y):
    """ Bar

    Parameters
    ----------
    x : scalar : units=m
        X
    y : scalar : units=s
        Y

    Returns
    -------
    z : scalar : units=m
示例#10
0
    ----------
    x : scalar : units=m
        X
    y : scalar : units=s
        Y

    Returns
    -------
    z : scalar : units=m/s
    """
    assert not isinstance(x, (UnitArray, UnitScalar))
    assert not isinstance(y, (UnitArray, UnitScalar))
    z = x / y
    return z

foo_with_units = has_units(foo)

def bar(x, y):
    """ Bar

    Parameters
    ----------
    x : scalar : units=m
        X
    y : scalar : units=s
        Y

    Returns
    -------
    z : scalar : units=m
    """