add asScalars() to document when we want to treat SkPoint or SkRect as an array
of SkScalars.
Review URL: https://codereview.chromium.org/12530010

git-svn-id: http://skia.googlecode.com/svn/trunk@8041 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/tests/PointTest.cpp b/tests/PointTest.cpp
index de0ae84..b8f4398 100644
--- a/tests/PointTest.cpp
+++ b/tests/PointTest.cpp
@@ -8,8 +8,20 @@
 // Unit tests for src/core/SkPoint.cpp and its header
 
 #include "SkPoint.h"
+#include "SkRect.h"
 #include "Test.h"
 
+static void test_casts(skiatest::Reporter* reporter) {
+    SkPoint p = { 0, 0 };
+    SkRect  r = { 0, 0, 0, 0 };
+
+    const SkScalar* pPtr = SkTCast<const SkScalar*>(&p);
+    const SkScalar* rPtr = SkTCast<const SkScalar*>(&r);
+
+    REPORTER_ASSERT(reporter, p.asScalars() == pPtr);
+    REPORTER_ASSERT(reporter, r.asScalars() == rPtr);
+}
+
 // Tests that SkPoint::length() and SkPoint::Length() both return
 // approximately expectedLength for this (x,y).
 static void test_length(skiatest::Reporter* reporter, SkScalar x, SkScalar y,
@@ -37,6 +49,8 @@
 }
 
 static void PointTest(skiatest::Reporter* reporter) {
+    test_casts(reporter);
+
     test_length(reporter, SkIntToScalar(3), SkIntToScalar(4), SkIntToScalar(5));
     test_length(reporter, SkFloatToScalar(0.6f), SkFloatToScalar(0.8f),
                 SK_Scalar1);