コード例 #1
0
 def test_regular_method_callable(self):
     class Dog:
         def bark(self):
             return 'Woof!'
     dog = funvert(Dog())
     sound = dog.bark()
     self.assertEqual(sound, 'Woof!')
コード例 #2
0
    def test_regular_property_gettable(self):
        class Dog:
            def __init__(self):
                self.furry = True

            def bark(self):
                return 'Woof!'

        dog = funvert(Dog())
        furry = dog.furry
        self.assertTrue(furry)
コード例 #3
0
 def test_can_use_minus_operator_after(self):
     one = funvert(1)
     zero = 1 - one
     self.assertEqual(zero, 0)
コード例 #4
0
 def test_can_use_multiply_operator_before(self):
     two = funvert(2)
     four = two * 2
     self.assertEqual(four, 4)
コード例 #5
0
 def test_can_use_plus_operator_before(self):
     one = funvert(1)
     two = 1 + one
     self.assertEqual(two, 2)
コード例 #6
0
 def test_can_use_minus_operator_before(self):
     one = funvert(1)
     zero = one - 1
     self.assertEqual(zero, 0)
コード例 #7
0
 def test_doesnt_double_funvert(self):
     one = funvert(1)
     one_prime = funvert(one)
     self.assertTrue(one is one_prime)
コード例 #8
0
 def test_can_use_plus_operator_after(self):
     one = funvert(1)
     two = one + 1
     self.assertEqual(two, 2)
コード例 #9
0
 def test_can_use_divide_operator_after(self):
     two = funvert(2)
     three = 6 / two
     self.assertEqual(three, 3)
コード例 #10
0
 def test_can_use_mod_operator_after(self):
     two = funvert(2)
     one = 5 % two
     self.assertEqual(one, 1)
コード例 #11
0
 def test_obj_is_original(self):
     original_one = 1
     one = funvert(original_one)
     self.assertTrue(one._obj is original_one)
コード例 #12
0
 def test_function_callable_as_method(self):
     one = funvert(1)
     two = one.incremented()
     self.assertEqual(two._obj, 2)
コード例 #13
0
 def test_funvert_produces_funverted(self):
     one = funvert(1)
     self.assertTrue(isinstance(one, Funverted))
コード例 #14
0
 def test_can_use_kwarg(self):
     one = funvert(1)
     three = one.incremented(by=2)
     self.assertEqual(three._obj, 3)
コード例 #15
0
 def test_can_use_parameter(self):
     one = funvert(1)
     three = one.incremented(2)
     self.assertEqual(three._obj, 3)
コード例 #16
0
 def test_can_use_multiply_operator_after(self):
     two = funvert(2)
     four = 2 * two
     self.assertEqual(four, 4)
コード例 #17
0
 def test_can_use_floordiv_operator_after(self):
     two = funvert(2)
     two_again = 5 // two
     self.assertEqual(two_again, 2)
コード例 #18
0
 def test_can_use_divide_operator_before(self):
     four = funvert(4)
     two = four / 2
     self.assertEqual(two, 2)
コード例 #19
0
 def test_can_use_mod_operator_before(self):
     five = funvert(5)
     one = five % 2
     self.assertEqual(one, 1)
コード例 #20
0
 def test_can_use_floordiv_operator_before(self):
     five = funvert(5)
     two = five // 2
     self.assertEqual(two, 2)
コード例 #21
0
 def test_is_callable_from_test_funvert(self):
     one = funvert(1)
     self.assertTrue(isinstance(one, Funverted))
     self.assertEqual(one._obj, 1)
     self.assertTrue(one.incd()._obj == 2)