gfx/tests/gtest/TestTiledLayerBuffer.cpp

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /* vim:set ts=2 sw=2 sts=2 et: */
     2 /* Any copyright is dedicated to the Public Domain.
     3  * http://creativecommons.org/publicdomain/zero/1.0/
     4  */
     6 #include "TiledLayerBuffer.h"
     8 #include "gtest/gtest.h"
    10 namespace mozilla {
    11 namespace layers {
    13 struct TestTiledLayerTile {
    14   int value;
    15   TestTiledLayerTile(int v = 0) {
    16     value = v;
    17   }
    18   bool operator== (const TestTiledLayerTile& o) const {
    19     return value == o.value;
    20   }
    21   bool operator!= (const TestTiledLayerTile& o) const {
    22     return value != o.value;
    23   }
    24 };
    26 class TestTiledLayerBuffer : public TiledLayerBuffer<TestTiledLayerBuffer, TestTiledLayerTile>
    27 {
    28   friend class TiledLayerBuffer<TestTiledLayerBuffer, TestTiledLayerTile>;
    30 public:
    31   TestTiledLayerTile GetPlaceholderTile() const {
    32     return TestTiledLayerTile(-1);
    33   }
    35   TestTiledLayerTile ValidateTile(TestTiledLayerTile aTile, const nsIntPoint& aTileOrigin, const nsIntRegion& aDirtyRect) {
    36     return TestTiledLayerTile();
    37   }
    39   void ReleaseTile(TestTiledLayerTile aTile)
    40   {
    42   }
    44   void SwapTiles(TestTiledLayerTile& aTileA, TestTiledLayerTile& aTileB)
    45   {
    46     TestTiledLayerTile oldTileA = aTileA;
    47     aTileA = aTileB;
    48     aTileB = oldTileA;
    49   }
    51   void TestUpdate(const nsIntRegion& aNewValidRegion, const nsIntRegion& aPaintRegion)
    52   {
    53     Update(aNewValidRegion, aPaintRegion);
    54   }
    55 };
    57 TEST(TiledLayerBuffer, TileConstructor) {
    58   TestTiledLayerBuffer buffer;
    59 }
    61 TEST(TiledLayerBuffer, TileStart) {
    62   TestTiledLayerBuffer buffer;
    64   ASSERT_EQ(buffer.RoundDownToTileEdge(10, 256), 0);
    65   ASSERT_EQ(buffer.RoundDownToTileEdge(-10, 256), -256);
    66 }
    68 TEST(TiledLayerBuffer, EmptyUpdate) {
    69   TestTiledLayerBuffer buffer;
    71   nsIntRegion validRegion(nsIntRect(0, 0, 10, 10));
    72   buffer.TestUpdate(validRegion, validRegion);
    74   ASSERT_EQ(buffer.GetValidRegion(), validRegion);
    75 }
    77 }
    78 }

mercurial