Lines Matching refs:self

55     def get_cfg_file(self, cfg_str):
56 self.addCleanup(os_helper.unlink, os_helper.TESTFN)
61 def test_config_dict(self):
63 cfg_name = self.get_cfg_file(test_config)
89 self.assertEqual(parsed_cfg, expected)
91 def test_partial_config_dict_with_comments(self):
93 cfg_name = self.get_cfg_file(test_config_two)
104 self.assertEqual(parsed_cfg, expected)
106 def test_config_dict_invalid(self):
108 cfg_name = self.get_cfg_file(invalid_test_config)
115 self.assertIn('Bad line in config-file ', err_msg)
116 self.assertIn('fillcolor: blue', err_msg)
118 self.assertEqual(parsed_cfg, {
126 def assertVectorsAlmostEqual(self, vec1, vec2):
128 self.fail("Tuples are not of equal size")
130 self.assertAlmostEqual(
135 def __mul__(self, other):
138 def __rmul__(self, other):
144 def test_constructor(self):
146 self.assertEqual(vec[0], 0.5)
147 self.assertEqual(vec[1], 2)
148 self.assertIsInstance(vec, Vec2D)
150 self.assertRaises(TypeError, Vec2D)
151 self.assertRaises(TypeError, Vec2D, 0)
152 self.assertRaises(TypeError, Vec2D, (0, 1))
153 self.assertRaises(TypeError, Vec2D, vec)
154 self.assertRaises(TypeError, Vec2D, 0, 1, 2)
156 def test_repr(self):
158 self.assertEqual(repr(vec), '(0.57,1.23)')
160 def test_equality(self):
164 self.assertEqual(vec1, vec2)
165 self.assertEqual(vec1, tuple(vec1))
166 self.assertEqual(tuple(vec1), vec1)
167 self.assertNotEqual(vec1, vec3)
168 self.assertNotEqual(vec2, vec3)
170 def test_pickling(self):
173 with self.subTest(proto=proto):
176 self.assertEqual(unpickled, vec)
177 self.assertIsInstance(unpickled, Vec2D)
179 def _assert_arithmetic_cases(self, test_cases, lambda_operator):
181 with self.subTest(case=test_case):
192 self.assertVectorsAlmostEqual(result, expected)
194 def test_vector_addition(self):
202 self._assert_arithmetic_cases(test_cases, lambda x, y: x + y)
204 def test_vector_subtraction(self):
211 self._assert_arithmetic_cases(test_cases, lambda x, y: x - y)
213 def test_vector_multiply(self):
219 self.assertAlmostEqual(answer, expected)
223 self.assertVectorsAlmostEqual(vec * 10, expected)
224 self.assertVectorsAlmostEqual(10 * vec, expected)
225 self.assertVectorsAlmostEqual(vec * 10.0, expected)
226 self.assertVectorsAlmostEqual(10.0 * vec, expected)
229 self.assertEqual(vec * M, Vec2D(f"{vec[0]}*M", f"{vec[1]}*M"))
230 self.assertEqual(M * vec, f'M*{vec}')
232 def test_vector_negative(self):
235 self.assertVectorsAlmostEqual(-vec, expected)
237 def test_distance(self):
238 self.assertAlmostEqual(abs(Vec2D(6, 8)), 10)
239 self.assertEqual(abs(Vec2D(0, 0)), 0)
240 self.assertAlmostEqual(abs(Vec2D(2.5, 6)), 6.5)
242 def test_rotate(self):
253 with self.subTest(case=case):
257 self.assertVectorsAlmostEqual(got, expected)
262 def setUp(self):
263 self.nav = turtle.TNavigator()
265 def test_goto(self):
266 self.nav.goto(100, -100)
267 self.assertAlmostEqual(self.nav.xcor(), 100)
268 self.assertAlmostEqual(self.nav.ycor(), -100)
270 def test_pos(self):
271 self.assertEqual(self.nav.pos(), self.nav._position)
272 self.nav.goto(100, -100)
273 self.assertEqual(self.nav.pos(), self.nav._position)
275 def test_left(self):
276 self.assertEqual(self.nav._orient, (1.0, 0))
277 self.nav.left(90)
278 self.assertVectorsAlmostEqual(self.nav._orient, (0.0, 1.0))
280 def test_right(self):
281 self.assertEqual(self.nav._orient, (1.0, 0))
282 self.nav.right(90)
283 self.assertVectorsAlmostEqual(self.nav._orient, (0, -1.0))
285 def test_reset(self):
286 self.nav.goto(100, -100)
287 self.assertAlmostEqual(self.nav.xcor(), 100)
288 self.assertAlmostEqual(self.nav.ycor(), -100)
289 self.nav.reset()
290 self.assertAlmostEqual(self.nav.xcor(), 0)
291 self.assertAlmostEqual(self.nav.ycor(), 0)
293 def test_forward(self):
294 self.nav.forward(150)
296 self.assertVectorsAlmostEqual(self.nav.position(), expected)
298 self.nav.reset()
299 self.nav.left(90)
300 self.nav.forward(150)
302 self.assertVectorsAlmostEqual(self.nav.position(), expected)
304 self.assertRaises(TypeError, self.nav.forward, 'skldjfldsk')
306 def test_backwards(self):
307 self.nav.back(200)
309 self.assertVectorsAlmostEqual(self.nav.position(), expected)
311 self.nav.reset()
312 self.nav.right(90)
313 self.nav.back(200)
315 self.assertVectorsAlmostEqual(self.nav.position(), expected)
317 def test_distance(self):
318 self.nav.forward(100)
320 self.assertAlmostEqual(self.nav.distance(Vec2D(0,0)), expected)
322 def test_radians_and_degrees(self):
323 self.nav.left(90)
324 self.assertAlmostEqual(self.nav.heading(), 90)
325 self.nav.radians()
326 self.assertAlmostEqual(self.nav.heading(), 1.57079633)
327 self.nav.degrees()
328 self.assertAlmostEqual(self.nav.heading(), 90)
330 def test_towards(self):
345 self.assertEqual(self.nav.towards(x, y), expected)
346 self.assertEqual(self.nav.towards((x, y)), expected)
347 self.assertEqual(self.nav.towards(Vec2D(x, y)), expected)
349 def test_heading(self):
351 self.nav.left(90)
352 self.assertAlmostEqual(self.nav.heading(), 90)
353 self.nav.left(45)
354 self.assertAlmostEqual(self.nav.heading(), 135)
355 self.nav.right(1.6)
356 self.assertAlmostEqual(self.nav.heading(), 133.4)
357 self.assertRaises(TypeError, self.nav.right, 'sdkfjdsf')
358 self.nav.reset()
363 self.nav.left(num)
364 self.assertEqual(self.nav.heading(), result)
365 self.nav.reset()
369 self.nav.right(num)
370 self.assertEqual(self.nav.heading(), result)
371 self.nav.reset()
377 self.nav.right(abs(num))
379 self.nav.left(num)
381 self.assertAlmostEqual(self.nav.heading(), sum_so_far % 360)
383 def test_setheading(self):
384 self.nav.setheading(102.32)
385 self.assertAlmostEqual(self.nav.heading(), 102.32)
386 self.nav.setheading(-123.23)
387 self.assertAlmostEqual(self.nav.heading(), (-123.23) % 360)
388 self.nav.setheading(-1000.34)
389 self.assertAlmostEqual(self.nav.heading(), (-1000.34) % 360)
390 self.nav.setheading(300000)
391 self.assertAlmostEqual(self.nav.heading(), 300000%360)
393 def test_positions(self):
394 self.nav.forward(100)
395 self.nav.left(90)
396 self.nav.forward(-200)
397 self.assertVectorsAlmostEqual(self.nav.pos(), (100.0, -200.0))
399 def test_setx_and_sety(self):
400 self.nav.setx(-1023.2334)
401 self.nav.sety(193323.234)
402 self.assertVectorsAlmostEqual(self.nav.pos(), (-1023.2334, 193323.234))
404 def test_home(self):
405 self.nav.left(30)
406 self.nav.forward(-100000)
407 self.nav.home()
408 self.assertVectorsAlmostEqual(self.nav.pos(), (0,0))
409 self.assertAlmostEqual(self.nav.heading(), 0)
411 def test_distance_method(self):
412 self.assertAlmostEqual(self.nav.distance(30, 40), 50)
414 self.assertAlmostEqual(self.nav.distance(vec), 0.22000227271553355)
418 self.assertAlmostEqual(self.nav.distance(another_turtle), 10000)
423 def test_pendown_and_penup(self):
427 self.assertTrue(tpen.isdown())
429 self.assertFalse(tpen.isdown())
431 self.assertTrue(tpen.isdown())
433 def test_showturtle_hideturtle_and_isvisible(self):
437 self.assertTrue(tpen.isvisible())
439 self.assertFalse(tpen.isvisible())
441 self.assertTrue(tpen.isvisible())