diff --git a/OpenSim/TestSuite/BotManager.cs b/OpenSim/TestSuite/BotManager.cs
deleted file mode 100644
index 55ba687290..0000000000
--- a/OpenSim/TestSuite/BotManager.cs
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * 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 name of the OpenSimulator Project 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 DEVELOPERS ``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 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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Reflection;
-using System.Threading;
-using OpenMetaverse;
-using log4net;
-using Nini.Config;
-using OpenSim.Framework;
-using OpenSim.Framework.Console;
-
-namespace OpenSim.TestSuite
-{
- ///
- /// Thread/Bot manager for the application
- ///
- public class BotManager
- {
- private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
-
- protected CommandConsole m_console;
- protected List m_lBot;
- protected Thread[] m_td;
- protected bool m_verbose = true;
- protected Random somthing = new Random(Environment.TickCount);
- protected int numbots = 0;
- protected IConfig Previous_config;
-
- ///
- /// Constructor Creates MainConsole.Instance to take commands and provide the place to write data
- ///
- public BotManager()
- {
- m_log.Info("In bot manager");
- m_lBot = new List();
- }
-
- ///
- /// Startup number of bots specified in the starting arguments
- ///
- /// How many bots to start up
- /// The configuration for the bots to use
- public void dobotStartup(int botcount, IConfig cs)
- {
- Previous_config = cs;
- m_td = new Thread[botcount];
- for (int i = 0; i < botcount; i++)
- {
- startupBot(i, cs);
- }
- }
-
- ///
- /// Add additional bots (and threads) to our bot pool
- ///
- /// How Many of them to add
- public void addbots(int botcount)
- {
- int len = m_td.Length;
- Thread[] m_td2 = new Thread[len + botcount];
- for (int i = 0; i < len; i++)
- {
- m_td2[i] = m_td[i];
- }
- m_td = m_td2;
- int newlen = len + botcount;
- for (int i = len; i < newlen; i++)
- {
- startupBot(i, Previous_config);
- }
- }
-
- ///
- /// This starts up the bot and stores the thread for the bot in the thread array
- ///
- /// The position in the thread array to stick the bot's thread
- /// Configuration of the bot
- public void startupBot(int pos, IConfig cs)
- {
- PhysicsBot pb = new PhysicsBot(cs);
-
- pb.OnConnected += handlebotEvent;
- pb.OnDisconnected += handlebotEvent;
- if (cs.GetString("firstname", "random") == "random") pb.firstname = CreateRandomName();
- if (cs.GetString("lastname", "random") == "random") pb.lastname = CreateRandomName();
-
- m_td[pos] = new Thread(pb.startup);
- m_td[pos].Name = "CampBot_" + pos;
- m_td[pos].IsBackground = true;
- m_td[pos].Start();
- m_lBot.Add(pb);
- }
-
- ///
- /// Creates a random name for the bot
- ///
- ///
- private string CreateRandomName()
- {
- string returnstring = "";
- string chars = "abcdefghijklmnopqrstuvwxyz0123456789";
-
- for (int i = 0; i < 7; i++)
- {
- returnstring += chars.Substring(somthing.Next(chars.Length),1);
- }
- return returnstring;
- }
-
- ///
- /// High level connnected/disconnected events so we can keep track of our threads by proxy
- ///
- ///
- ///
- public void handlebotEvent(PhysicsBot callbot, EventType eventt)
- {
- switch (eventt)
- {
- case EventType.CONNECTED:
- m_log.Info("[ " + callbot.firstname + " " + callbot.lastname + "]: Connected");
- numbots++;
- break;
- case EventType.DISCONNECTED:
- m_log.Info("[ " + callbot.firstname + " " + callbot.lastname + "]: Disconnected");
- m_td[m_lBot.IndexOf(callbot)].Abort();
- numbots--;
- if (numbots > 1)
- Environment.Exit(0);
- break;
- }
- }
-
- ///
- /// Shutting down all bots
- ///
- public void doBotShutdown()
- {
- foreach (PhysicsBot pb in m_lBot)
- {
- pb.shutdown();
- }
- }
- }
-}
diff --git a/OpenSim/TestSuite/Main.cs b/OpenSim/TestSuite/Main.cs
deleted file mode 100644
index ee75bf5fab..0000000000
--- a/OpenSim/TestSuite/Main.cs
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * 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 name of the OpenSimulator Project 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 DEVELOPERS ``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 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.
- */
-
-using System;
-using Nini.Config;
-
-namespace OpenSim.TestSuite
-{
- ///
- /// Event Types from the BOT. Add new events here
- ///
- public enum EventType : int
- {
- NONE = 0,
- CONNECTED = 1,
- DISCONNECTED = 2
- }
-
- public class TestSuite
- {
- public static void Main(string[] args)
- {
- // TODO: config parser
-
- // TODO: load tests from addings
-
- // TODO: create base bot cloud for use in tests
-
- IConfig config = ParseConfig(args);
- if (config.Get("help") != null || config.Get("loginuri") == null)
- {
- Help();
- }
- else
- {
- // TODO: unused: int botcount = config.GetInt("botcount", 1);
-
- // BotManager bm = new BotManager();
-
- Utils.TestPass("Completed Startup");
- }
- }
-
- private static IConfig ParseConfig(String[] args)
- {
- //Set up our nifty config.. thanks to nini
- ArgvConfigSource cs = new ArgvConfigSource(args);
-
- // TODO: unused: cs.AddSwitch("Startup", "botcount","n");
- cs.AddSwitch("Startup", "loginuri","l");
- cs.AddSwitch("Startup", "firstname");
- cs.AddSwitch("Startup", "lastname");
- cs.AddSwitch("Startup", "password");
- cs.AddSwitch("Startup", "help","h");
-
- IConfig ol = cs.Configs["Startup"];
- return ol;
- }
-
- private static void Help()
- {
- Console.WriteLine(
- "usage: pCampBot <-loginuri loginuri> [OPTIONS]\n" +
- "Spawns a set of bots to test an OpenSim region\n\n" +
- " -l, -loginuri loginuri for sim to log into (required)\n" +
- // TODO: unused: " -n, -botcount number of bots to start (default: 1)\n" +
- " -firstname first name for the bot(s) (default: random string)\n" +
- " -lastname lastname for the bot(s) (default: random string)\n" +
- " -password password for the bots(s) (default: random string)\n" +
- " -h, -help show this message"
- );
- }
- }
-}
diff --git a/OpenSim/TestSuite/PhysicsBot.cs b/OpenSim/TestSuite/PhysicsBot.cs
deleted file mode 100644
index fac42756a8..0000000000
--- a/OpenSim/TestSuite/PhysicsBot.cs
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * 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 name of the OpenSimulator Project 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 DEVELOPERS ``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 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.
- */
-
-using System;
-using System.IO;
-using System.Threading;
-using System.Timers;
-using OpenMetaverse;
-using Nini.Config;
-using OpenSim.Framework;
-using OpenSim.Framework.Console;
-using Timer=System.Timers.Timer;
-
-namespace OpenSim.TestSuite
-{
- public class PhysicsBot
- {
- public delegate void AnEvent(PhysicsBot callbot, EventType someevent); // event delegate for bot events
- public IConfig startupConfig; // bot config, passed from BotManager
-
- public string firstname;
- public string lastname;
- public string password;
- public string loginURI;
-
- public event AnEvent OnConnected;
- public event AnEvent OnDisconnected;
-
- protected Timer m_action; // Action Timer
-
- protected Random somthing = new Random(Environment.TickCount);// We do stuff randomly here
-
- //New instance of a SecondLife client
- public GridClient client = new GridClient();
-
- protected string[] talkarray;
- ///
- ///
- ///
- /// nini config for the bot
- public PhysicsBot(IConfig bsconfig)
- {
- startupConfig = bsconfig;
- readconfig();
- talkarray = readexcuses();
- }
-
- //We do our actions here. This is where one would
- //add additional steps and/or things the bot should do
-
- void m_action_Elapsed(object sender, ElapsedEventArgs e)
- {
- //client.Throttle.Task = 500000f;
- //client.Throttle.Set();
- int walkorrun = somthing.Next(4); // Randomize between walking and running. The greater this number,
- // the greater the bot's chances to walk instead of run.
- if (walkorrun == 0)
- {
- client.Self.Movement.AlwaysRun = true;
- }
- else
- {
- client.Self.Movement.AlwaysRun = false;
- }
-
- // TODO: unused: Vector3 pos = client.Self.SimPosition;
- Vector3 newpos = new Vector3(somthing.Next(255), somthing.Next(255), somthing.Next(255));
- client.Self.Movement.TurnToward(newpos);
-
- for (int i = 0; i < 2000; i++)
- {
- client.Self.Movement.AtPos = true;
- Thread.Sleep(somthing.Next(25, 75)); // Makes sure the bots keep walking for this time.
- }
- client.Self.Jump(true);
-
- string randomf = talkarray[somthing.Next(talkarray.Length)];
- if (talkarray.Length > 1 && randomf.Length > 1)
- client.Self.Chat(randomf, 0, ChatType.Normal);
-
- //Thread.Sleep(somthing.Next(1, 10)); // Apparently its better without it right now.
- }
-
- ///
- /// Read the Nini config and initialize
- ///
- public void readconfig()
- {
- firstname = startupConfig.GetString("firstname", "random");
- lastname = startupConfig.GetString("lastname", "random");
- password = startupConfig.GetString("password", "12345");
- loginURI = startupConfig.GetString("loginuri");
- }
-
- ///
- /// Tells LibSecondLife to logout and disconnect. Raises the disconnect events once it finishes.
- ///
- public void shutdown()
- {
- client.Network.Logout();
- }
-
- ///
- /// This is the bot startup loop.
- ///
- public void startup()
- {
- client.Settings.LOGIN_SERVER = loginURI;
- client.Network.LoginProgress += this.Network_LoginProgress;
- client.Network.SimConnected += this.Network_SimConnected;
- client.Network.Disconnected += this.Network_OnDisconnected;
- if (client.Network.Login(firstname, lastname, password, "pCampBot", "Your name"))
- {
-
- if (OnConnected != null)
- {
- m_action = new Timer(somthing.Next(1000, 10000));
- m_action.Elapsed += new ElapsedEventHandler(m_action_Elapsed);
- m_action.Start();
- OnConnected(this, EventType.CONNECTED);
- client.Self.Jump(true);
- }
- }
- else
- {
- MainConsole.Instance.Output(firstname + " " + lastname + "Can't login: " + client.Network.LoginMessage);
- if (OnDisconnected != null)
- {
- OnDisconnected(this, EventType.DISCONNECTED);
- }
- }
- }
-
- public void Network_LoginProgress(object sender, LoginProgressEventArgs args)
- {
- if (args.Status == LoginStatus.Success)
- {
- if (OnConnected != null)
- {
- OnConnected(this, EventType.CONNECTED);
- }
- }
- }
-
- public void Network_SimConnected(object sender, SimConnectedEventArgs args)
- {
- }
-
- public void Network_OnDisconnected(object sender, DisconnectedEventArgs args)
- {
- if (OnDisconnected != null)
- {
- OnDisconnected(this, EventType.DISCONNECTED);
- }
- }
-
- public string[] readexcuses()
- {
- string allexcuses = "";
-
- string file = Path.Combine(Util.configDir(), "pCampBotSentences.txt");
- if (File.Exists(file))
- {
- StreamReader csr = File.OpenText(file);
- allexcuses = csr.ReadToEnd();
- csr.Close();
- }
-
- return allexcuses.Split(Environment.NewLine.ToCharArray());
- }
- }
-}
diff --git a/OpenSim/TestSuite/README.txt b/OpenSim/TestSuite/README.txt
deleted file mode 100644
index cdfa4a7840..0000000000
--- a/OpenSim/TestSuite/README.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-OpenSim Test Suite
-------------------------------------------------------------
-
-The eventual goal of the OpenSim Test Suite is to provide a framework
-and a set of tests to do system level regression testing of OpenSim.
-In short:
-
-OpenSim Test Suite will have Test Modules (Mono Addins?) that will
-verify certain paths in the code. Some early modules may be (subject
-to change):
-
- * Login Tests
- - Attempt to Log in 1, 5, 20 bots.
- * Basic Walk Tests
- - Attempt to Log in and move about in well known tracks
- - Repeat with 5, 20 bots
- * Basic Construct Tests
- - Construct Simple Objects in World
- - Ensure bots can see other objects constructed
- * Basic Asset Tests
- - Construct Simple Objects in World with Textures
- - Pull Objects and Textures
-
-
-
\ No newline at end of file
diff --git a/OpenSim/TestSuite/Util.cs b/OpenSim/TestSuite/Util.cs
deleted file mode 100644
index e050c0709b..0000000000
--- a/OpenSim/TestSuite/Util.cs
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * 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 name of the OpenSimulator Project 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 DEVELOPERS ``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 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.
- */
-
-using System;
-
-namespace OpenSim.TestSuite
-{
- public class Utils
- {
- enum Result
- {
- Fail = 0,
- Pass = 1,
- Skip = 3
- }
-
- private static String ResultToString(Result r)
- {
- if (r == Result.Pass)
- {
- return "PASS";
- }
- else if (r == Result.Fail)
- {
- return "FAIL";
- }
- else if (r == Result.Skip)
- {
- return "SKIP";
- }
- else
- {
- return "UNKNOWN";
- }
- }
-
- private static void TestResult(Result r, String msg)
- {
- Console.WriteLine("[{0}]: {1}", ResultToString(r), msg);
- }
-
- public static void TestFail(String msg)
- {
- TestResult(Result.Fail, msg);
- }
-
- public static void TestPass(String msg)
- {
- TestResult(Result.Pass, msg);
- }
-
- public static void TestSkip(String msg)
- {
- TestResult(Result.Skip, msg);
- }
- }
-}
diff --git a/OpenSim/Tools/pCampBot/BotManager.cs b/OpenSim/Tools/pCampBot/BotManager.cs
index 0aaa226bcb..a4b7f16d9f 100644
--- a/OpenSim/Tools/pCampBot/BotManager.cs
+++ b/OpenSim/Tools/pCampBot/BotManager.cs
@@ -165,18 +165,20 @@ namespace pCampBot
///
///
///
- public void handlebotEvent(PhysicsBot callbot, EventType eventt)
+ private void handlebotEvent(PhysicsBot callbot, EventType eventt)
{
switch (eventt)
{
case EventType.CONNECTED:
m_log.Info("[" + callbot.FirstName + " " + callbot.LastName + "]: Connected");
numbots++;
+// m_log.InfoFormat("NUMBOTS {0}", numbots);
break;
case EventType.DISCONNECTED:
m_log.Info("[" + callbot.FirstName + " " + callbot.LastName + "]: Disconnected");
m_td[m_lBot.IndexOf(callbot)].Abort();
numbots--;
+// m_log.InfoFormat("NUMBOTS {0}", numbots);
if (numbots <= 0)
Environment.Exit(0);
break;
diff --git a/OpenSim/Tools/pCampBot/PhysicsBot.cs b/OpenSim/Tools/pCampBot/PhysicsBot.cs
index 0344a829f3..0c399e355f 100644
--- a/OpenSim/Tools/pCampBot/PhysicsBot.cs
+++ b/OpenSim/Tools/pCampBot/PhysicsBot.cs
@@ -29,19 +29,23 @@ using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
+using System.Reflection;
using System.Threading;
using System.Timers;
+using log4net;
using OpenMetaverse;
using OpenMetaverse.Assets;
using Nini.Config;
using OpenSim.Framework;
using OpenSim.Framework.Console;
-using Timer=System.Timers.Timer;
+using Timer = System.Timers.Timer;
namespace pCampBot
{
public class PhysicsBot
{
+ private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
+
public delegate void AnEvent(PhysicsBot callbot, EventType someevent); // event delegate for bot events
public IConfig startupConfig; // bot config, passed from BotManager
@@ -384,6 +388,7 @@ namespace pCampBot
public void Network_OnDisconnected(object sender, DisconnectedEventArgs args)
{
+// m_log.ErrorFormat("Fired Network_OnDisconnected");
if (OnDisconnected != null)
{
OnDisconnected(this, EventType.DISCONNECTED);
diff --git a/prebuild.xml b/prebuild.xml
index b9201f7606..bf11b0ffda 100644
--- a/prebuild.xml
+++ b/prebuild.xml
@@ -2549,34 +2549,6 @@
-
-
-
-
- ../../bin/
-
-
-
-
- ../../bin/
-
-
-
- ../../bin/
-
-
-
-
-
-
-
-
-
-
-
-
-
-