Ejemplo n.º 1
0
	def test_initializers(self):
		scenarios = (
			("123","3"),
			(12.4, 3.4),
			(None, None),
			(1+2j, 2+1j),
			)
		for scenario in scenarios:
			with self.subTest(f"Scenario with {scenario}."):
				with self.assertRaises(TypeError):
					Mod(*scenario)
Ejemplo n.º 2
0
	def test_equality_different_mod(self):
		with self.assertRaises(TypeError):
			self.mod == Mod(7,18)
Ejemplo n.º 3
0
	def test_equality_mod(self):
		self.assertEqual(self.mod, Mod(7, 12))
Ejemplo n.º 4
0
	def test_modulus(self):
		with self.assertRaises(ValueError):
			Mod(19, -4)
			Mod(0, 0)
Ejemplo n.º 5
0
	def test_multiplication_int(self):
		new_mod = self.mod * 2
		self.assertEqual(new_mod, Mod(2, 12))
Ejemplo n.º 6
0
	def test_subtraction_int(self):
		new_mod = self.mod - 2
		self.assertEqual(new_mod, Mod(5, 12))
Ejemplo n.º 7
0
	def test_inplace_addition(self):
		self.mod += 2
		self.assertEqual(self.mod, Mod(9, 12))
Ejemplo n.º 8
0
	def test_addition_diff_modulus(self):
		with self.assertRaises(TypeError):
			self.mod + Mod(2, 13)
Ejemplo n.º 9
0
	def test_power_diff_modulus(self):
		with self.assertRaises(TypeError):
			self.mod ** Mod(2, 13)
Ejemplo n.º 10
0
	def test_object_creation(self):
		mod_2 = Mod(4, 3)
		self.assertTrue(mod_2)
		self.assertEqual(mod_2.value, 1) # Value should be converted to the residue
		self.assertEqual(mod_2.modulus, 3)
Ejemplo n.º 11
0
	def test_power_int(self):
		new_mod = self.mod ** 2
		self.assertEqual(new_mod, Mod(1, 12))
Ejemplo n.º 12
0
	def test_power_mod(self):
		new_mod = self.mod ** Mod(2, 12)
		self.assertEqual(new_mod, Mod(1, 12))
Ejemplo n.º 13
0
	def test_multiplication_inplace(self):
		self.mod *= 2
		self.assertEqual(self.mod, Mod(2, 12))
Ejemplo n.º 14
0
	def test_multiplication_diff_modulus(self):
		with self.assertRaises(TypeError):
			self.mod * Mod(2, 13)
Ejemplo n.º 15
0
	def test_addition_mod(self):
		new_mod = self.mod + Mod(2, 12)
		self.assertEqual(new_mod, Mod(9, 12))
Ejemplo n.º 16
0
	def test_addition_int(self):
		new_mod = self.mod + 2
		self.assertEqual(new_mod, Mod(9, 12))
Ejemplo n.º 17
0
	def test_power_inplace(self):
		self.mod **= 2
		self.assertEqual(self.mod, Mod(1, 12))
Ejemplo n.º 18
0
	def setUp(self):
		self.mod = Mod(19, 12)
Ejemplo n.º 19
0
	def test_comparison_lt(self):
		self.assertLess(self.mod, Mod(8, 12))
		self.assertLess(self.mod, 8)
Ejemplo n.º 20
0
	def test_subtraction_mod(self):
		new_mod = self.mod - Mod(2, 12)
		self.assertEqual(new_mod, Mod(5, 12))
Ejemplo n.º 21
0
	def test_comparison_le(self):
		self.assertLessEqual(self.mod, Mod(19, 12))
		self.assertLessEqual(self.mod, 19)
Ejemplo n.º 22
0
	def test_subtraction_diff_modulus(self):
		with self.assertRaises(TypeError):
			self.mod - Mod(2, 13)
Ejemplo n.º 23
0
	def test_subtraction_inplace(self):
		self.mod -= 2
		self.assertEqual(self.mod, Mod(5, 12))