[or-cvs] r15615: add TestExecutor interface and beginning of an implementatio (in puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi: . impl)
sebastian at seul.org
sebastian at seul.org
Thu Jul 3 05:30:34 UTC 2008
Author: sebastian
Date: 2008-07-03 01:30:33 -0400 (Thu, 03 Jul 2008)
New Revision: 15615
Added:
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/TestExecutor.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/TestExecutorImpl.java
Log:
add TestExecutor interface and beginning of an implementation
Added: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/TestExecutor.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/TestExecutor.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/TestExecutor.java 2008-07-03 05:30:33 UTC (rev 15615)
@@ -0,0 +1,77 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+import java.util.Set;
+import java.util.concurrent.ConcurrentMap;
+
+ /**
+ * A master uses a <code>TestExecutor</code> to load all registered tests and
+ * check whether the currently running PuppeTor network can satisfy the
+ * precondition necessary to run the test. If yes, it sets up the testing
+ * environment and passes <code>PuppeTorJob</code>s to the slaves as the test
+ * instructs it to do.
+ *
+ * @author Sebastian Hahn
+ */
+public interface TestExecutor {
+ /**
+ * Register a test with the executor so it will consider it for execution.
+ * Accept all submitted tests even though some may not be executable at the
+ * moment of submission.
+ */
+ public void registerTest( PuppeTorTest test );
+
+ /**
+ * Start executing tests. Callers should make sure that the PuppeTor
+ * network that is supposed to be used is ready.
+ */
+ public void startTesting();
+
+ /**
+ * Return a Map of the nodes that have been run successfully along with the
+ * results of the tests.
+ */
+ public ConcurrentMap<PuppeTorTest, PuppeTorTestResult> getSuccessfulTests();
+
+ /**
+ * Return a Map of the nodes that have been run but didn't complete
+ * successfully along with the results of the tests.
+ */
+ public ConcurrentMap<PuppeTorTest, PuppeTorTestResult> getFailedTests();
+
+ /**
+ * Return all tests that could not be executed because the PuppeTorNetwork
+ * could not match a test's preconditions.
+ */
+ public Set<PuppeTorTest> getNotRunTests();
+}
Added: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/TestExecutorImpl.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/TestExecutorImpl.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/TestExecutorImpl.java 2008-07-03 05:30:33 UTC (rev 15615)
@@ -0,0 +1,75 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi.impl;
+
+import java.util.Set;
+import java.util.concurrent.ConcurrentMap;
+
+import de.uniba.wiai.lspi.puppetor.rmi.PuppeTorTest;
+import de.uniba.wiai.lspi.puppetor.rmi.PuppeTorTestResult;
+import de.uniba.wiai.lspi.puppetor.rmi.TestExecutor;
+
+/**
+ * @author Sebastian Hahn
+ */
+public class TestExecutorImpl implements TestExecutor {
+
+ protected void evaluateNetwork() {
+ ;
+ }
+
+ public void startTesting() {
+ // TODO Auto-generated method stub
+
+ }
+
+ public ConcurrentMap<PuppeTorTest, PuppeTorTestResult> getFailedTests() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public Set<PuppeTorTest> getNotRunTests() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public ConcurrentMap<PuppeTorTest, PuppeTorTestResult> getSuccessfulTests() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public void registerTest(PuppeTorTest test) {
+ // TODO Auto-generated method stub
+
+ }
+
+}
More information about the tor-commits
mailing list