Package tripleplay.ui.util

Source Code of tripleplay.ui.util.Scale9Test

//
// Triple Play - utilities for use in PlayN-based games
// Copyright (c) 2011-2014, Three Rings Design, Inc. - All rights reserved.
// http://github.com/threerings/tripleplay/blob/master/LICENSE

package tripleplay.ui.util;

import org.junit.Test;
import static org.junit.Assert.*;

import tripleplay.ui.util.Scale9.Axis;

public class Scale9Test
{
    static float DELTA = (float)1e-7;

    @Test public void testAxis () {
        Axis axis = checkCoords(new Axis(1));
        assertEquals(1f/3, axis.size(0), DELTA);
        assertEquals(1-2f/3, axis.size(1), DELTA);
        assertEquals(1f/3, axis.size(2), DELTA);
    }

    @Test public void testAxisResize () {
        Axis axis1 = checkCoords(new Axis(1).resize(0, .25f).resize(2, .25f));
        Axis axis2 = checkCoords(new Axis(1).resize(1, .5f));
        for (Axis axis : new Axis[] {axis1, axis2}) {
            assertEquals(.25f, axis.size(0), DELTA);
            assertEquals(.5f, axis.size(1), DELTA);
            assertEquals(.25f, axis.size(2), DELTA);
        }
    }

    @Test public void testAxisDest () {
        Axis axis = checkCoords(new Axis(1, new Axis(1)));
        assertEquals(1f/3, axis.size(0), DELTA);
        assertEquals(1-2f/3, axis.size(1), DELTA);
        assertEquals(1f/3, axis.size(2), DELTA);

        axis = checkCoords(new Axis(2, new Axis(1)));
        assertEquals(1f/3, axis.size(0), DELTA);
        assertEquals(2-2f/3, axis.size(1), DELTA);
        assertEquals(1f/3, axis.size(2), DELTA);

        axis = checkCoords(new Axis(.5f, new Axis(1)));
        assertEquals(1f/3, axis.size(0), DELTA);
        assertEquals(.5-2f/3, axis.size(1), DELTA);
        assertEquals(1f/3, axis.size(2), DELTA);
    }

    @Test public void testAxisClamp () {
        Axis axis = checkCoords(Scale9.clamp(new Axis(1), 1));
        assertEquals(1f/3, axis.size(0), DELTA);
        assertEquals(1-2f/3, axis.size(1), DELTA);
        assertEquals(1f/3, axis.size(2), DELTA);

        axis = checkCoords(Scale9.clamp(new Axis(2).resize(1, 1.5f), 1));
        assertEquals(.25f, axis.size(0), DELTA);
        assertEquals(.5f, axis.size(1), DELTA);
        assertEquals(.25f, axis.size(2), DELTA);

        axis = checkCoords(Scale9.clamp(new Axis(1), .5f));
        assertEquals(.25f, axis.size(0), DELTA);
        assertEquals(0, axis.size(1), DELTA);
        assertEquals(.25f, axis.size(2), DELTA);
    }

    Axis checkCoords (Axis axis) {
        assertEquals(axis.coord(0), 0, DELTA);
        assertEquals(axis.coord(1), axis.size(0), DELTA);
        assertEquals(axis.coord(2), axis.size(0) + axis.size(1), DELTA);
        return axis;
    }
}
TOP

Related Classes of tripleplay.ui.util.Scale9Test

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.