001 /****************************************************************************** 002 * Copyright (C) MActor Developers. All rights reserved. * 003 * ---------------------------------------------------------------------------* 004 * This file is part of MActor. * 005 * * 006 * MActor is free software; you can redistribute it and/or modify * 007 * it under the terms of the GNU General Public License as published by * 008 * the Free Software Foundation; either version 2 of the License, or * 009 * (at your option) any later version. * 010 * * 011 * MActor is distributed in the hope that it will be useful, * 012 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 014 * GNU General Public License for more details. * 015 * * 016 * You should have received a copy of the GNU General Public License * 017 * along with MActor; if not, write to the Free Software * 018 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA * 019 ******************************************************************************/ 020 package org.mactor.ui.cmd; 021 022 import org.apache.log4j.Logger; 023 import org.mactor.framework.TestContext; 024 import org.mactor.framework.TestEvent; 025 import org.mactor.framework.TestFeedbackListener; 026 import org.mactor.framework.TestEvent.EventType; 027 028 public class SimpleLogFeedbackHandler implements TestFeedbackListener { 029 protected static Logger log = Logger.getLogger(SimpleLogFeedbackHandler.class); 030 private String getLogPrefix(TestEvent event) { 031 return event.getTestRunInstanceId() + ";" + event.getTestInstanceId() + ";" + event.getTestSpec().getName() + ";"; 032 } 033 public void onNodeEvent(TestEvent event, TestContext context) { 034 if (event.getEventType().equals(EventType.Start)) { 035 log.info(getLogPrefix(event) + "Node execution started"); 036 } else { 037 if (event.isTestCompleteEvent()) { 038 if (event.isSuccessful()) { 039 log.info(getLogPrefix(event) + "Test completed with SUCCESS"); 040 } else { 041 if (event.getCause() != null) 042 log.info(getLogPrefix(event) + "Test completed with FAILURE. Details:" + event.getCause().getMessage()); 043 else 044 log.info(getLogPrefix(event) + "Test completed with FAILURE"); 045 } 046 } else if (!event.isSuccessful()) { 047 if (event.getCause() != null) 048 log.info(getLogPrefix(event) + event.getNode().getName() + ";Execution of node failed with:" + event.getCause().getMessage()); 049 else 050 log.info(getLogPrefix(event) + event.getNode().getName() + ";Execution of node failed"); 051 } 052 } 053 } 054 public void onTestRunCompleted(String testRunInstanceId, int succededCount, int failedCount) { 055 log.info(testRunInstanceId + ";Test Run comleted with " + succededCount + " SUCCESSFUL tests and " + failedCount + " FAILED tests"); 056 } 057 }