/* MonkeyTalk - a cross-platform functional testing tool Copyright (C) 2012 Gorilla Logic, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero 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 Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ package com.gorillalogic.monkeytalk.processor.tests; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.CoreMatchers.notNullValue; import static org.junit.Assert.assertThat; import org.junit.Test; import com.gorillalogic.monkeytalk.processor.PlaybackListener; import com.gorillalogic.monkeytalk.processor.PlaybackResult; import com.gorillalogic.monkeytalk.processor.Scope; import com.gorillalogic.monkeytalk.sender.Response; public class PlaybackListenerTest { private static int counter; @Test public void testAnonymousPlaybackListener() { counter = 0; PlaybackListener listener = new PlaybackListener() { @Override public void onStart(Scope scope) { counter += 1; } @Override public void onScriptStart(Scope scope) { counter += 1000; } @Override public void onScriptComplete(Scope scope, PlaybackResult r) { counter += 100; } @Override public void onComplete(Scope scope, Response response) { counter += 10; } @Override public void onPrint(String message) { } }; assertThat(listener, notNullValue()); listener.onScriptStart(null); listener.onStart(null); listener.onComplete(null, new Response()); listener.onScriptComplete(null, new PlaybackResult()); assertThat(counter, is(1111)); } }