1package com.xtremelabs.robolectric.shadows; 2 3import android.graphics.Path; 4import com.xtremelabs.robolectric.Robolectric; 5import com.xtremelabs.robolectric.WithTestDefaultsRunner; 6import org.junit.Test; 7import org.junit.runner.RunWith; 8 9import java.util.List; 10 11import static com.xtremelabs.robolectric.Robolectric.shadowOf; 12import static com.xtremelabs.robolectric.shadows.ShadowPath.Point.Type.LINE_TO; 13import static com.xtremelabs.robolectric.shadows.ShadowPath.Point.Type.MOVE_TO; 14import static org.junit.Assert.assertEquals; 15 16 17@RunWith(WithTestDefaultsRunner.class) 18public class PathTest { 19 20 @Test 21 public void testGradTo() { 22 Path path = Robolectric.newInstanceOf(Path.class); 23 path.quadTo(0, 5, 10, 15); 24 ShadowPath shadowPath = shadowOf(path); 25 assertEquals(shadowPath.getQuadDescription(), "Add a quadratic bezier from last point, approaching (0.0,5.0), ending at (10.0,15.0)"); 26 } 27 28 @Test 29 public void testMoveTo() throws Exception { 30 Path path = Robolectric.newInstanceOf(Path.class); 31 path.moveTo(2, 3); 32 path.moveTo(3, 4); 33 34 List<ShadowPath.Point> moveToPoints = shadowOf(path).getPoints(); 35 assertEquals(2, moveToPoints.size()); 36 assertEquals(new ShadowPath.Point(2, 3, MOVE_TO), moveToPoints.get(0)); 37 assertEquals(new ShadowPath.Point(3, 4, MOVE_TO), moveToPoints.get(1)); 38 } 39 40 @Test 41 public void testLineTo() throws Exception { 42 Path path = Robolectric.newInstanceOf(Path.class); 43 path.lineTo(2, 3); 44 path.lineTo(3, 4); 45 46 List<ShadowPath.Point> lineToPoints = shadowOf(path).getPoints(); 47 assertEquals(2, lineToPoints.size()); 48 assertEquals(new ShadowPath.Point(2, 3, LINE_TO), lineToPoints.get(0)); 49 assertEquals(new ShadowPath.Point(3, 4, LINE_TO), lineToPoints.get(1)); 50 } 51} 52