| /* | |
| * Copyright 2015 Google Inc. | |
| * | |
| * Use of this source code is governed by a BSD-style license that can be | |
| * found in the LICENSE file. | |
| */ | |
| #include "Test.h" | |
| #include "SkPathPriv.h" | |
| DEF_TEST(IsClosedSingleContourTest, reporter) { | |
| SkPath p; | |
| REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p)); | |
| p.reset(); | |
| p.close(); | |
| REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p)); | |
| p.reset(); | |
| p.moveTo(10, 10); | |
| p.close(); | |
| REPORTER_ASSERT(reporter, SkPathPriv::IsClosedSingleContour(p)); | |
| p.reset(); | |
| p.moveTo(10, 10); | |
| p.lineTo(20, 20); | |
| p.close(); | |
| REPORTER_ASSERT(reporter, SkPathPriv::IsClosedSingleContour(p)); | |
| p.reset(); | |
| p.moveTo(10, 10); | |
| p.lineTo(20, 20); | |
| p.quadTo(30, 30, 40, 40); | |
| p.cubicTo(50, 50, 60, 60, 70, 70); | |
| p.conicTo(30, 30, 40, 40, 0.5); | |
| p.close(); | |
| REPORTER_ASSERT(reporter, SkPathPriv::IsClosedSingleContour(p)); | |
| p.reset(); | |
| p.moveTo(10, 10); | |
| p.lineTo(20, 20); | |
| p.lineTo(20, 30); | |
| REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p)); | |
| p.reset(); | |
| p.moveTo(10, 10); | |
| p.lineTo(20, 20); | |
| p.moveTo(10, 10); | |
| p.lineTo(20, 30); | |
| p.close(); | |
| REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p)); | |
| p.reset(); | |
| p.moveTo(10, 10); | |
| p.lineTo(20, 20); | |
| p.close(); | |
| p.lineTo(20, 30); | |
| p.close(); | |
| REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p)); | |
| } |