Home | History | Annotate | Download | only in cursor
      1 // Copyright 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "ui/base/cursor/cursor_loader_x11.h"
      6 
      7 #undef None
      8 #undef Bool
      9 
     10 #include "base/logging.h"
     11 #include "testing/gtest/include/gtest/gtest.h"
     12 #include "third_party/skia/include/core/SkBitmap.h"
     13 #include "ui/base/cursor/cursor_util.h"
     14 
     15 namespace ui {
     16 
     17 TEST(CursorLoaderX11Test, ScaleAndRotate) {
     18   SkBitmap bitmap;
     19   bitmap.setConfig(SkBitmap::kARGB_8888_Config, 10, 5);
     20   bitmap.allocPixels();
     21   bitmap.eraseColor(SK_ColorBLACK);
     22 
     23   gfx::Point hotpoint(3,4);
     24 
     25   ScaleAndRotateCursorBitmapAndHotpoint(1.0f,
     26                                         gfx::Display::ROTATE_0,
     27                                         &bitmap,
     28                                         &hotpoint);
     29   EXPECT_EQ(10, bitmap.width());
     30   EXPECT_EQ(5, bitmap.height());
     31   EXPECT_EQ("3,4", hotpoint.ToString());
     32 
     33   ScaleAndRotateCursorBitmapAndHotpoint(1.0f,
     34                                         gfx::Display::ROTATE_90,
     35                                         &bitmap,
     36                                         &hotpoint);
     37 
     38   EXPECT_EQ(5, bitmap.width());
     39   EXPECT_EQ(10, bitmap.height());
     40   EXPECT_EQ("1,3", hotpoint.ToString());
     41 
     42   ScaleAndRotateCursorBitmapAndHotpoint(2.0f,
     43                                         gfx::Display::ROTATE_180,
     44                                         &bitmap,
     45                                         &hotpoint);
     46   EXPECT_EQ(10, bitmap.width());
     47   EXPECT_EQ(20, bitmap.height());
     48   EXPECT_EQ("8,14", hotpoint.ToString());
     49 
     50   ScaleAndRotateCursorBitmapAndHotpoint(1.0f,
     51                                         gfx::Display::ROTATE_270,
     52                                         &bitmap,
     53                                         &hotpoint);
     54   EXPECT_EQ(20, bitmap.width());
     55   EXPECT_EQ(10, bitmap.height());
     56   EXPECT_EQ("14,2", hotpoint.ToString());
     57 }
     58 
     59 }  // namespace ui
     60