From 4e779bbd8129c8fb0b2c109ca2912265ca85c8a5 Mon Sep 17 00:00:00 2001 From: Justin Clarke Casey Date: Tue, 17 Feb 2009 16:51:09 +0000 Subject: * switch to pulsing monitors to perform test sync instead of events, since this doesn't allow one to accidentally forget to reset the event --- .../World/Archiver/Tests/ArchiverTests.cs | 28 +++++++++++++--------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs') diff --git a/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs b/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs index 25fffc4..bde15b3 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs @@ -43,11 +43,12 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests [TestFixture] public class ArchiverTests { - private EventWaitHandle m_waitHandle = new ManualResetEvent(false); - private void SaveCompleted(string errorMessage) { - m_waitHandle.Set(); + lock (this) + { + Monitor.PulseAll(this); + } } /// @@ -103,12 +104,14 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests scene.AddNewSceneObject(new SceneObjectGroup(part2), false); } - MemoryStream archiveWriteStream = new MemoryStream(); - + MemoryStream archiveWriteStream = new MemoryStream(); scene.EventManager.OnOarFileSaved += SaveCompleted; - archiverModule.ArchiveRegion(archiveWriteStream); - m_waitHandle.WaitOne(60000, true); - m_waitHandle.Reset(); + + lock (this) + { + archiverModule.ArchiveRegion(archiveWriteStream); + Monitor.Wait(this, 60000); + } byte[] archive = archiveWriteStream.ToArray(); MemoryStream archiveReadStream = new MemoryStream(archive); @@ -251,9 +254,12 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests // Write out this scene scene.EventManager.OnOarFileSaved += SaveCompleted; - archiverModule.ArchiveRegion(archiveWriteStream); - m_waitHandle.WaitOne(60000, true); - m_waitHandle.Reset(); + + lock (this) + { + archiverModule.ArchiveRegion(archiveWriteStream); + Monitor.Wait(this, 60000); + } } { -- cgit v1.1