diff options
author | Ansis Brammanis <brammanis@gmail.com> | 2016-01-15 17:39:08 -0800 |
---|---|---|
committer | Ansis Brammanis <brammanis@gmail.com> | 2016-01-19 18:23:21 -0800 |
commit | d34f8eb674b9753c47616f37ae88ff7a02f61ba0 (patch) | |
tree | c19cfd5ba6b68c229b6e395f9a62294ab33d46f9 /test/sprite/sprite_atlas.cpp | |
parent | 26faa6a5ade54c0a423aab84106876dc59be868f (diff) | |
download | qtlocation-mapboxgl-d34f8eb674b9753c47616f37ae88ff7a02f61ba0.tar.gz |
[core][ios][osx][android] make SpriteImage accept PremultipliedImage
the SpriteImage constructor signature changes from
SpriteImage(
uint16_t width, uint16_t height, float pixelRatio,
std::string&& data, bool sdf = false);
to
SpriteImage(PremultipliedImage&&, float pixelRatio, bool sdf = false)
Diffstat (limited to 'test/sprite/sprite_atlas.cpp')
-rw-r--r-- | test/sprite/sprite_atlas.cpp | 38 |
1 files changed, 21 insertions, 17 deletions
diff --git a/test/sprite/sprite_atlas.cpp b/test/sprite/sprite_atlas.cpp index 8e3c4317c0..d9a8c5c720 100644 --- a/test/sprite/sprite_atlas.cpp +++ b/test/sprite/sprite_atlas.cpp @@ -34,11 +34,11 @@ TEST(Sprite, SpriteAtlas) { EXPECT_EQ(0, metro.pos.y); EXPECT_EQ(20, metro.pos.w); EXPECT_EQ(20, metro.pos.h); - EXPECT_EQ(18, metro.texture->width); - EXPECT_EQ(18, metro.texture->height); - EXPECT_EQ(18, metro.texture->pixelWidth); - EXPECT_EQ(18, metro.texture->pixelHeight); - EXPECT_EQ(1.0f, metro.texture->pixelRatio); + EXPECT_EQ(18, metro.spriteImage->getWidth()); + EXPECT_EQ(18, metro.spriteImage->getHeight()); + EXPECT_EQ(18, metro.spriteImage->image.width); + EXPECT_EQ(18, metro.spriteImage->image.height); + EXPECT_EQ(1.0f, metro.spriteImage->pixelRatio); EXPECT_TRUE(atlas.getData()); @@ -96,11 +96,11 @@ TEST(Sprite, SpriteAtlasSize) { EXPECT_EQ(0, metro.pos.y); EXPECT_EQ(16, metro.pos.w); EXPECT_EQ(16, metro.pos.h); - EXPECT_EQ(18, metro.texture->width); - EXPECT_EQ(18, metro.texture->height); - EXPECT_EQ(18, metro.texture->pixelWidth); - EXPECT_EQ(18, metro.texture->pixelHeight); - EXPECT_EQ(1.0f, metro.texture->pixelRatio); + EXPECT_EQ(18, metro.spriteImage->getWidth()); + EXPECT_EQ(18, metro.spriteImage->getHeight()); + EXPECT_EQ(18, metro.spriteImage->image.width); + EXPECT_EQ(18, metro.spriteImage->image.height); + EXPECT_EQ(1.0f, metro.spriteImage->pixelRatio); const size_t bytes = atlas.getTextureWidth() * atlas.getTextureHeight() * 4; const auto hash = test::crc64(reinterpret_cast<const char*>(atlas.getData()), bytes); @@ -122,24 +122,28 @@ TEST(Sprite, SpriteAtlasUpdates) { EXPECT_EQ(32, atlas.getTextureWidth()); EXPECT_EQ(32, atlas.getTextureHeight()); - store.setSprite("one", std::make_shared<SpriteImage>(16, 12, 1, std::string(16 * 12 * 4, '\x00'))); + store.setSprite("one", std::make_shared<SpriteImage>(PremultipliedImage(16, 12), 1)); auto one = *atlas.getImage("one", false); EXPECT_EQ(0, one.pos.x); EXPECT_EQ(0, one.pos.y); EXPECT_EQ(20, one.pos.w); EXPECT_EQ(16, one.pos.h); - EXPECT_EQ(16, one.texture->width); - EXPECT_EQ(12, one.texture->height); - EXPECT_EQ(16, one.texture->pixelWidth); - EXPECT_EQ(12, one.texture->pixelHeight); - EXPECT_EQ(1.0f, one.texture->pixelRatio); + EXPECT_EQ(16, one.spriteImage->getWidth()); + EXPECT_EQ(12, one.spriteImage->getHeight()); + EXPECT_EQ(16, one.spriteImage->image.width); + EXPECT_EQ(12, one.spriteImage->image.height); + EXPECT_EQ(1.0f, one.spriteImage->pixelRatio); const size_t bytes = atlas.getTextureWidth() * atlas.getTextureHeight() * 4; const auto hash = test::crc64(reinterpret_cast<const char*>(atlas.getData()), bytes); EXPECT_EQ(0x0000000000000000u, hash) << std::hex << hash; // Update sprite - auto newSprite = std::make_shared<SpriteImage>(16, 12, 1, std::string(16 * 12 * 4, '\xFF')); + PremultipliedImage image2(16, 12); + for (size_t i = 0; i < image2.size(); i++) { + image2.data.get()[i] = 255; + } + auto newSprite = std::make_shared<SpriteImage>(std::move(image2), 1); store.setSprite("one", newSprite); ASSERT_EQ(newSprite, store.getSprite("one")); |