| Index: tests/KtxTest.cpp
 | 
| diff --git a/tests/KtxTest.cpp b/tests/KtxTest.cpp
 | 
| deleted file mode 100644
 | 
| index 7220cbf32e45d3891e3b01cbc7de1aea6c900379..0000000000000000000000000000000000000000
 | 
| --- a/tests/KtxTest.cpp
 | 
| +++ /dev/null
 | 
| @@ -1,144 +0,0 @@
 | 
| -/*
 | 
| - * Copyright 2014 Google Inc.
 | 
| - *
 | 
| - * Use of this source code is governed by a BSD-style license that can be
 | 
| - * found in the LICENSE file.
 | 
| - */
 | 
| -
 | 
| -#include "Resources.h"
 | 
| -#include "SkBitmap.h"
 | 
| -#include "SkData.h"
 | 
| -#include "SkImageGenerator.h"
 | 
| -#include "SkForceLinking.h"
 | 
| -#include "SkImageDecoder.h"
 | 
| -#include "SkOSFile.h"
 | 
| -#include "SkRandom.h"
 | 
| -#include "SkStream.h"
 | 
| -#include "Test.h"
 | 
| -
 | 
| -__SK_FORCE_IMAGE_DECODER_LINKING;
 | 
| -
 | 
| -/**
 | 
| - * First, make sure that writing an 8-bit RGBA KTX file and then
 | 
| - * reading it produces the same bitmap.
 | 
| - */
 | 
| -DEF_TEST(KtxReadWrite, reporter) {
 | 
| -
 | 
| -    // Random number generator with explicit seed for reproducibility
 | 
| -    SkRandom rand(0x1005cbad);
 | 
| -
 | 
| -    SkBitmap bm8888;
 | 
| -    bm8888.allocN32Pixels(128, 128);
 | 
| -
 | 
| -    uint8_t *pixels = reinterpret_cast<uint8_t*>(bm8888.getPixels());
 | 
| -    REPORTER_ASSERT(reporter, pixels);
 | 
| -
 | 
| -    if (nullptr == pixels) {
 | 
| -        return;
 | 
| -    }
 | 
| -    
 | 
| -    uint8_t *row = pixels;
 | 
| -    for (int y = 0; y < bm8888.height(); ++y) {        
 | 
| -        for (int x = 0; x < bm8888.width(); ++x) {
 | 
| -            uint8_t a = rand.nextRangeU(0, 255);
 | 
| -            uint8_t r = rand.nextRangeU(0, 255);
 | 
| -            uint8_t g = rand.nextRangeU(0, 255);
 | 
| -            uint8_t b = rand.nextRangeU(0, 255);
 | 
| -
 | 
| -            SkPMColor &pixel = *(reinterpret_cast<SkPMColor*>(row + x*sizeof(SkPMColor)));
 | 
| -            pixel = SkPreMultiplyARGB(a, r, g, b);
 | 
| -        }
 | 
| -        row += bm8888.rowBytes();
 | 
| -    }
 | 
| -    REPORTER_ASSERT(reporter, !(bm8888.empty()));
 | 
| -
 | 
| -    SkAutoDataUnref encodedData(SkImageEncoder::EncodeData(bm8888, SkImageEncoder::kKTX_Type, 0));
 | 
| -    if (nullptr == encodedData.get()) {
 | 
| -        ERRORF(reporter, "failed to encode the bitmap to KTX");
 | 
| -        return;
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    SkAutoTDelete<SkMemoryStream> stream(new SkMemoryStream(encodedData));
 | 
| -    REPORTER_ASSERT(reporter, stream);
 | 
| -
 | 
| -    SkBitmap decodedBitmap;
 | 
| -    bool imageDecodeSuccess = SkImageDecoder::DecodeStream(stream, &decodedBitmap);
 | 
| -    if (!imageDecodeSuccess) {
 | 
| -        ERRORF(reporter, "failed to decode the KTX stream");
 | 
| -        return;
 | 
| -    }
 | 
| -
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.colorType() == bm8888.colorType());
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.alphaType() == bm8888.alphaType());
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.width() == bm8888.width());
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.height() == bm8888.height());
 | 
| -    REPORTER_ASSERT(reporter, !(decodedBitmap.empty()));
 | 
| -
 | 
| -    uint8_t *decodedPixels = reinterpret_cast<uint8_t*>(decodedBitmap.getPixels());
 | 
| -    REPORTER_ASSERT(reporter, decodedPixels);
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.getSize() == bm8888.getSize());
 | 
| -
 | 
| -    if (nullptr == decodedPixels) {
 | 
| -        return;
 | 
| -    }
 | 
| -
 | 
| -    REPORTER_ASSERT(reporter, memcmp(decodedPixels, pixels, decodedBitmap.getSize()) == 0);
 | 
| -}
 | 
| -
 | 
| -/**
 | 
| - * Next test is to see whether or not reading an unpremultiplied KTX file accurately
 | 
| - * creates a premultiplied buffer...
 | 
| - */
 | 
| -DEF_TEST(KtxReadUnpremul, reporter) {
 | 
| -
 | 
| -    static const uint8_t kHalfWhiteKTX[] = {
 | 
| -        0xAB, 0x4B, 0x54, 0x58, 0x20, 0x31, // First twelve bytes is magic
 | 
| -        0x31, 0xBB, 0x0D, 0x0A, 0x1A, 0x0A, // KTX identifier string
 | 
| -        0x01, 0x02, 0x03, 0x04, // Then magic endian specifier
 | 
| -        0x01, 0x14, 0x00, 0x00, // uint32_t fGLType;
 | 
| -        0x01, 0x00, 0x00, 0x00, // uint32_t fGLTypeSize;
 | 
| -        0x08, 0x19, 0x00, 0x00, // uint32_t fGLFormat;
 | 
| -        0x58, 0x80, 0x00, 0x00, // uint32_t fGLInternalFormat;
 | 
| -        0x08, 0x19, 0x00, 0x00, // uint32_t fGLBaseInternalFormat;
 | 
| -        0x02, 0x00, 0x00, 0x00, // uint32_t fPixelWidth;
 | 
| -        0x02, 0x00, 0x00, 0x00, // uint32_t fPixelHeight;
 | 
| -        0x00, 0x00, 0x00, 0x00, // uint32_t fPixelDepth;
 | 
| -        0x00, 0x00, 0x00, 0x00, // uint32_t fNumberOfArrayElements;
 | 
| -        0x01, 0x00, 0x00, 0x00, // uint32_t fNumberOfFaces;
 | 
| -        0x01, 0x00, 0x00, 0x00, // uint32_t fNumberOfMipmapLevels;
 | 
| -        0x00, 0x00, 0x00, 0x00, // uint32_t fBytesOfKeyValueData;
 | 
| -        0x10, 0x00, 0x00, 0x00, // image size: 2x2 image of RGBA = 4 * 4 = 16 bytes
 | 
| -        0xFF, 0xFF, 0xFF, 0x80, // Pixel 1
 | 
| -        0xFF, 0xFF, 0xFF, 0x80, // Pixel 2
 | 
| -        0xFF, 0xFF, 0xFF, 0x80, // Pixel 3
 | 
| -        0xFF, 0xFF, 0xFF, 0x80};// Pixel 4
 | 
| -
 | 
| -    SkAutoTDelete<SkMemoryStream> stream(new SkMemoryStream(kHalfWhiteKTX, sizeof(kHalfWhiteKTX)));
 | 
| -    REPORTER_ASSERT(reporter, stream);
 | 
| -
 | 
| -    SkBitmap decodedBitmap;
 | 
| -    bool imageDecodeSuccess = SkImageDecoder::DecodeStream(stream, &decodedBitmap);
 | 
| -    if (!imageDecodeSuccess) {
 | 
| -        ERRORF(reporter, "failed to decode the KTX stream");
 | 
| -        return;
 | 
| -    }
 | 
| -
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.colorType() == kN32_SkColorType);
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.alphaType() == kPremul_SkAlphaType);
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.width() == 2);
 | 
| -    REPORTER_ASSERT(reporter, decodedBitmap.height() == 2);
 | 
| -    REPORTER_ASSERT(reporter, !(decodedBitmap.empty()));
 | 
| -
 | 
| -    uint8_t *decodedPixels = reinterpret_cast<uint8_t*>(decodedBitmap.getPixels());
 | 
| -    REPORTER_ASSERT(reporter, decodedPixels);
 | 
| -
 | 
| -    uint8_t *row = decodedPixels;
 | 
| -    for (int j = 0; j < decodedBitmap.height(); ++j) {
 | 
| -        for (int i = 0; i < decodedBitmap.width(); ++i) {
 | 
| -            SkPMColor pixel = *(reinterpret_cast<SkPMColor*>(row + i*sizeof(SkPMColor)));
 | 
| -            REPORTER_ASSERT(reporter, SkPreMultiplyARGB(0x80, 0xFF, 0xFF, 0xFF) == pixel);
 | 
| -        }
 | 
| -        row += decodedBitmap.rowBytes();
 | 
| -    }
 | 
| -}
 | 
| 
 |