From 2c2f10e156c62aa1d95923ff5309f2be7f08faeb Mon Sep 17 00:00:00 2001 From: Justin Clarke Casey Date: Mon, 2 Feb 2009 20:59:12 +0000 Subject: * Establish OnOarFileSaved EventManager event and subscribe to that instead of passing in a waithandle to the archiver * This matches the existing OnOarFileLoaded event * This brings up the question of how these things can be made generic so that they don't have to be tied into EventManager, but that's a topic for another day --- .../Modules/World/Archiver/Tests/ArchiverTests.cs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'OpenSim/Region/Environment/Modules/World/Archiver/Tests') diff --git a/OpenSim/Region/Environment/Modules/World/Archiver/Tests/ArchiverTests.cs b/OpenSim/Region/Environment/Modules/World/Archiver/Tests/ArchiverTests.cs index 95064e2..43df685 100644 --- a/OpenSim/Region/Environment/Modules/World/Archiver/Tests/ArchiverTests.cs +++ b/OpenSim/Region/Environment/Modules/World/Archiver/Tests/ArchiverTests.cs @@ -44,13 +44,20 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver.Tests [TestFixture] public class ArchiverTests { + private EventWaitHandle m_waitHandle = new AutoResetEvent(false); + + private void SaveCompleted(string errorMessage) + { + m_waitHandle.Set(); + } + /// /// Test saving a V0.2 OpenSim Region Archive. /// [Test] public void TestSaveOarV0p2() { - //log4net.Config.XmlConfigurator.Configure(); + log4net.Config.XmlConfigurator.Configure(); ArchiverModule archiverModule = new ArchiverModule(); SerialiserModule serialiserModule = new SerialiserModule(); @@ -71,11 +78,12 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver.Tests ownerId, shape, groupPosition, rotationOffset, offsetPosition); part.Name = partName; - scene.AddNewSceneObject(new SceneObjectGroup(part), false); - EventWaitHandle waitHandle = new ManualResetEvent(false); + scene.AddNewSceneObject(new SceneObjectGroup(part), false); MemoryStream archiveWriteStream = new MemoryStream(); - archiverModule.ArchiveRegion(archiveWriteStream, waitHandle); - waitHandle.WaitOne(60000, true); + + scene.EventManager.OnOarFileSaved += SaveCompleted; + archiverModule.ArchiveRegion(archiveWriteStream); + m_waitHandle.WaitOne(60000, true); byte[] archive = archiveWriteStream.ToArray(); MemoryStream archiveReadStream = new MemoryStream(archive); -- cgit v1.1