// Asteroid Push - A game featuring selfmade spaceships and pompous physics // Copyright (C) 2013 Christian Meyer, Silvan Wegmann // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see <http://www.gnu.org/licenses/>. package org.codecranachan.asteroidpush.base; import static org.junit.Assert.*; import org.codecranachan.asteroidpush.base.ResourceLoader; import org.codecranachan.asteroidpush.testutils.ClassMockery; import org.jmock.Expectations; import org.jmock.Mockery; import org.junit.Before; import org.junit.Test; import org.newdawn.slick.Font; import org.newdawn.slick.GameContainer; public class ResourceLoaderTest { Mockery context; GameContainer containerMock; ResourceLoader testLoader; Font fontMock; @Before public void setUp() throws Exception { context = new ClassMockery(); containerMock = context.mock(GameContainer.class); fontMock = context.mock(Font.class); testLoader = new ResourceLoader(); } @Test public void testLoadFont() { context.checking(new Expectations() { { oneOf(containerMock).getDefaultFont(); will(returnValue(fontMock)); } }); testLoader.setGameContainer(containerMock); assertSame(fontMock, testLoader.loadFont("SomeUnavailableFont.ttf", 14)); context.assertIsSatisfied(); } }