/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.build.gradle.integration.common.utils;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
/**
* Helper class to read image files.
*/
public class ImageHelper {
public static final int RED = 0xFFFF0000;
public static final int GREEN = 0xFF00FF00;
public static final int BLUE = 0x00FFFF00;
/**
* Check the color of the first pixel in imageFile is as expected.
*/
public static void checkImageColor(File imageFile, int expectedColor) throws IOException {
assertTrue(
"File '" + imageFile.getAbsolutePath() + "' does not exist.",
imageFile.isFile());
BufferedImage image = ImageIO.read(imageFile);
int rgb = image.getRGB(0, 0);
assertEquals(
String.format("Expected: 0x%08X, actual: 0x%08X for file %s",
expectedColor, rgb, imageFile),
expectedColor, rgb);
}
public static void checkImageColor(File folder, String fileName, int expectedColor)
throws IOException {
File f = new File(folder, fileName);
checkImageColor(f, expectedColor);
}
}