コード例 #1
0
 def test_cannot_create_x_0_fraction(self):
     with self.assertRaises(InvalidFractionError):
         Fraction(2, 0)
コード例 #2
0
 def test_sum_negative_fraction_minus_1_2_minus_1_2(self):
     frac_1 = Fraction(1, -2)
     frac_2 = Fraction(-1, 2)
     result = frac_1 + frac_2
     self.assertTrue(result.is_equal(-1, 1))
コード例 #3
0
 def test_sum_fraction_1_2_1_3(self):
     frac_1 = Fraction(1, 2)
     frac_2 = Fraction(1, 3)
     result = frac_1 + frac_2
     self.assertTrue(result.is_equal(5, 6))
コード例 #4
0
 def test_can_convert_to_continuous_1071_462(self):
     frac = Fraction(1071, 462)
     expected_coefficients = [2, 3, 7]
     for actual, expected in zip(frac.to_continuous(),
                                 expected_coefficients):
         self.assertEqual(actual, expected)
コード例 #5
0
 def test_substract_fraction_1_2_1_2(self):
     frac_1 = Fraction(1, 2)
     frac_2 = Fraction(1, 2)
     result = frac_1 - frac_2
     self.assertTrue(result.is_equal(0, 1))
コード例 #6
0
 def test_can_get_int_part(self):
     frac = Fraction(7, 3)
     self.assertEqual(frac.get_integer_part(), 2)
コード例 #7
0
 def test_can_create_fraction(self):
     frac = Fraction()
     self.assertTrue(isinstance(frac, Fraction))
コード例 #8
0
 def test_multiply_fraction_and_int_number(self):
     fraction = Fraction(-1, 6)
     number = 2
     result = number * fraction
     self.assertTrue(result.is_equal(-1, 3))
コード例 #9
0
 def test_multiply_fraction_and_decimal_number(self):
     fraction = Fraction(1, 6)
     number = 2.5
     result = number * fraction
     self.assertTrue(result.is_equal(5, 12))
コード例 #10
0
 def test_multiply_one_negative_fraction_minus_in_denominator(self):
     frac_1 = Fraction(1, 3)
     frac_2 = Fraction(2, -5)
     result = frac_1 * frac_2
     self.assertTrue(result.is_equal(-2, 15))
コード例 #11
0
 def test_multiply_two_negative_fractions(self):
     frac_1 = Fraction(-1, 3)
     frac_2 = Fraction(2, -5)
     result = frac_1 * frac_2
     self.assertTrue(result.is_equal(2, 15))
コード例 #12
0
 def test_multiply_one_negative_fraction(self):
     frac_1 = Fraction(1, 3)
     frac_2 = Fraction(-2, 5)
     result = frac_1 * frac_2
     self.assertTrue(result.is_equal(-2, 15))
コード例 #13
0
 def test_can_create_1_2_fraction(self):
     frac = Fraction(1, 2)
     self.assertTrue(frac.is_equal(1, 2))
コード例 #14
0
 def test_can_convert_to_continuous_9_4(self):
     frac = Fraction(9, 4)
     expected_coefficients = [2, 4]
     for actual, expected in zip(frac.to_continuous(),
                                 expected_coefficients):
         self.assertEqual(actual, expected)
コード例 #15
0
 def test_auto_reduce_fraction(self):
     frac = Fraction(2, 4)
     self.assertTrue(frac.is_equal(1, 2))
コード例 #16
0
 def test_multiply_fractions_by_zero(self):
     frac_1 = Fraction(1, 2)
     frac_2 = Fraction(0, 2)
     result = frac_1 * frac_2
     self.assertTrue(result.is_equal(0, 1))
コード例 #17
0
 def test_can_print_fraction(self):
     frac = Fraction(5, 7)
     self.assertEqual(str(frac), '5/7')
コード例 #18
0
 def test_cannot_divide_fractions_by_zero(self):
     frac_1 = Fraction(1, 2)
     frac_2 = Fraction(0, 2)
     with self.assertRaises(InvalidFractionError):
         frac_1 / frac_2
コード例 #19
0
 def test_is_equal_can_return_false_denominator_differs(self):
     frac = Fraction(1, 2)
     self.assertFalse(frac.is_equal(2, 2))
コード例 #20
0
 def test_divide_two_fractions(self):
     frac_1 = Fraction(2, 3)
     frac_2 = Fraction(2, 3)
     result = frac_1 / frac_2
     self.assertTrue(result.is_equal(1, 1))
コード例 #21
0
 def test_can_convert_to_decimal_1_2(self):
     frac = Fraction(1, 2)
     self.assertEqual(frac.to_decimal(), 0.5)
コード例 #22
0
 def test_default_fraction_is_0_1(self):
     frac = Fraction()
     self.assertTrue(frac.is_equal(0, 1))