|  | /* | 
|  | * 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)); | 
|  | } |