@@ -432,54 +432,28 @@ def test_polyline_tangent_at_point(coords, input, expected):
432432
433433
434434@pytest .mark .parametrize (
435- "coords,input,expected" ,
435+ "coords,input,expected,length " ,
436436 [
437- (
438- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]],
439- 1.5 ,
440- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 3.5 , 0 ]],
441- ),
442- (
443- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]],
444- - 2.5 ,
445- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , - 0.5 , 0 ]],
446- ),
447- (
448- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]],
449- (2 , 2 ),
450- [[- 2 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 4 , 0 ]],
451- ),
452- (
453- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]],
454- (2 , 0 ),
455- [[- 2 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]],
456- ),
437+ ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], 1.5 , [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 3.5 , 0 ]], 5.5 ),
438+ ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], - 2.5 , [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , - 0.5 , 0 ]], 2.5 ),
439+ ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], (2 , 2 ), [[- 2 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 4 , 0 ]], 8 ),
440+ ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], (2 , 0 ), [[- 2 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], 6 ),
457441 ],
458442)
459- def test_polyline_extend (coords , input , expected ):
460- assert expected == Polyline (coords ).extended (input )
443+ def test_polyline_extend (coords , input , expected , length ):
444+ polyline = Polyline (coords ).extended (input )
445+ assert expected == polyline and length == polyline .length
461446
462447
463448@pytest .mark .parametrize (
464- "coords,input,expected" ,
449+ "coords,input,expected,length " ,
465450 [
466- (
467- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]],
468- 0.5 ,
469- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 1.5 , 0 ]],
470- ),
471- (
472- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]],
473- 2 ,
474- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ]],
475- ),
476- (
477- [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]],
478- (0.5 , 2.5 ),
479- [[0.5 , 0 , 0 ], [1 , 0 , 0 ], [1.5 , 0 , 0 ]],
480- ),
481- ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], (1 , 2 ), [[1 , 0 , 0 ], [2 , 0 , 0 ]]),
451+ ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], 0.5 , [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 1.5 , 0 ]], 3.5 ),
452+ ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], 2 , [[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ]], 2 ),
453+ ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], (0.5 , 2.5 ), [[0.5 , 0 , 0 ], [1 , 0 , 0 ], [1.5 , 0 , 0 ]], 1 ),
454+ ([[0 , 0 , 0 ], [1 , 0 , 0 ], [2 , 0 , 0 ], [2 , 2 , 0 ]], (1 , 2 ), [[1 , 0 , 0 ], [2 , 0 , 0 ]], 1 ),
482455 ],
483456)
484- def test_polyline_shortened (coords , input , expected ):
485- assert expected == Polyline (coords ).shortened (input )
457+ def test_polyline_shortened (coords , input , expected , length ):
458+ polyline = Polyline (coords ).shortened (input )
459+ assert expected == polyline and length == polyline .length
0 commit comments