blob: be25b3c73ae155259fdfe60aa7b02144609b36e4 [file] [log] [blame]
ethannicholasc88cb892015-12-15 11:01:12 -08001/*
2 * Copyright 2015 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
Mike Kleinc0bd9f92019-04-23 12:05:21 -05007#include "src/core/SkPathPriv.h"
8#include "tests/Test.h"
ethannicholasc88cb892015-12-15 11:01:12 -08009
10DEF_TEST(IsClosedSingleContourTest, reporter) {
Mike Reedad5494d2020-08-25 17:36:28 -040011 SkPathBuilder p;
12 REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p.detach()));
ethannicholasc88cb892015-12-15 11:01:12 -080013
ethannicholasc88cb892015-12-15 11:01:12 -080014 p.close();
Mike Reedad5494d2020-08-25 17:36:28 -040015 REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p.detach()));
ethannicholasc88cb892015-12-15 11:01:12 -080016
ethannicholasc88cb892015-12-15 11:01:12 -080017 p.moveTo(10, 10);
18 p.close();
Mike Reedad5494d2020-08-25 17:36:28 -040019 REPORTER_ASSERT(reporter, SkPathPriv::IsClosedSingleContour(p.detach()));
ethannicholasc88cb892015-12-15 11:01:12 -080020
ethannicholasc88cb892015-12-15 11:01:12 -080021 p.moveTo(10, 10);
22 p.lineTo(20, 20);
23 p.close();
Mike Reedad5494d2020-08-25 17:36:28 -040024 REPORTER_ASSERT(reporter, SkPathPriv::IsClosedSingleContour(p.detach()));
ethannicholasc88cb892015-12-15 11:01:12 -080025
ethannicholasc88cb892015-12-15 11:01:12 -080026 p.moveTo(10, 10);
27 p.lineTo(20, 20);
28 p.quadTo(30, 30, 40, 40);
29 p.cubicTo(50, 50, 60, 60, 70, 70);
30 p.conicTo(30, 30, 40, 40, 0.5);
31 p.close();
Mike Reedad5494d2020-08-25 17:36:28 -040032 REPORTER_ASSERT(reporter, SkPathPriv::IsClosedSingleContour(p.detach()));
ethannicholasc88cb892015-12-15 11:01:12 -080033
ethannicholasc88cb892015-12-15 11:01:12 -080034 p.moveTo(10, 10);
35 p.lineTo(20, 20);
36 p.lineTo(20, 30);
Mike Reedad5494d2020-08-25 17:36:28 -040037 REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p.detach()));
ethannicholasc88cb892015-12-15 11:01:12 -080038
ethannicholasc88cb892015-12-15 11:01:12 -080039 p.moveTo(10, 10);
40 p.lineTo(20, 20);
41 p.moveTo(10, 10);
42 p.lineTo(20, 30);
43 p.close();
Mike Reedad5494d2020-08-25 17:36:28 -040044 REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p.detach()));
ethannicholasc88cb892015-12-15 11:01:12 -080045
ethannicholasc88cb892015-12-15 11:01:12 -080046 p.moveTo(10, 10);
47 p.lineTo(20, 20);
48 p.close();
49 p.lineTo(20, 30);
50 p.close();
Mike Reedad5494d2020-08-25 17:36:28 -040051 REPORTER_ASSERT(reporter, !SkPathPriv::IsClosedSingleContour(p.detach()));
ethannicholasc88cb892015-12-15 11:01:12 -080052}