aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Communications/Tests/Cache
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Framework/Communications/Tests/Cache')
-rw-r--r--OpenSim/Framework/Communications/Tests/Cache/UserProfileCacheServiceTests.cs109
1 files changed, 59 insertions, 50 deletions
diff --git a/OpenSim/Framework/Communications/Tests/Cache/UserProfileCacheServiceTests.cs b/OpenSim/Framework/Communications/Tests/Cache/UserProfileCacheServiceTests.cs
index fdc20dd..fe88cf5 100644
--- a/OpenSim/Framework/Communications/Tests/Cache/UserProfileCacheServiceTests.cs
+++ b/OpenSim/Framework/Communications/Tests/Cache/UserProfileCacheServiceTests.cs
@@ -43,6 +43,18 @@ namespace OpenSim.Framework.Communications.Tests
43 [TestFixture] 43 [TestFixture]
44 public class UserProfileCacheServiceTests 44 public class UserProfileCacheServiceTests
45 { 45 {
46 /// <value>Used by tests to indicate whether an async operation timed out</value>
47 private bool timedOut;
48
49 private void InventoryReceived(UUID userId)
50 {
51 lock (this)
52 {
53 timedOut = false;
54 Monitor.PulseAll(this);
55 }
56 }
57
46 [Test] 58 [Test]
47 public void TestGetUserDetails() 59 public void TestGetUserDetails()
48 { 60 {
@@ -54,6 +66,7 @@ namespace OpenSim.Framework.Communications.Tests
54 CachedUserInfo nonExistingUserInfo; 66 CachedUserInfo nonExistingUserInfo;
55 67
56 TestCommunicationsManager commsManager = new TestCommunicationsManager(); 68 TestCommunicationsManager commsManager = new TestCommunicationsManager();
69 Scene myScene = SceneSetupHelpers.SetupScene(commsManager, "");
57 70
58 // Check we can't retrieve info before it exists by uuid 71 // Check we can't retrieve info before it exists by uuid
59 nonExistingUserInfo = commsManager.UserProfileCacheService.GetUserDetails(userId); 72 nonExistingUserInfo = commsManager.UserProfileCacheService.GetUserDetails(userId);
@@ -116,15 +129,16 @@ namespace OpenSim.Framework.Communications.Tests
116 { 129 {
117 TestHelper.InMethod(); 130 TestHelper.InMethod();
118 131
119 Scene myScene = SceneSetupHelpers.SetupScene(); 132 Scene myScene = SceneSetupHelpers.SetupScene("inventory");
120 CachedUserInfo userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager); 133
121 for (int i = 0 ; i < 50 ; i++) 134 timedOut = true;
122 { 135 lock (this)
123 if (userInfo.HasReceivedInventory == true) 136 {
124 break; 137 UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager, InventoryReceived);
125 Thread.Sleep(200); 138 Monitor.Wait(this, 60000);
126 } 139 }
127 Assert.That(userInfo.HasReceivedInventory, Is.True, "FetchInventory timed out (10 seconds)"); 140
141 Assert.That(timedOut, Is.False, "Timed out");
128 } 142 }
129 143
130 [Test] 144 [Test]
@@ -132,15 +146,14 @@ namespace OpenSim.Framework.Communications.Tests
132 { 146 {
133 TestHelper.InMethod(); 147 TestHelper.InMethod();
134 148
135 Scene myScene = SceneSetupHelpers.SetupScene(); 149 Scene myScene = SceneSetupHelpers.SetupScene("inventory");
136 CachedUserInfo userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager); 150 CachedUserInfo userInfo;
137 for (int i = 0 ; i < 50 ; i++) 151
138 { 152 lock (this)
139 if (userInfo.HasReceivedInventory == true) 153 {
140 break; 154 userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager, InventoryReceived);
141 Thread.Sleep(200); 155 Monitor.Wait(this, 60000);
142 } 156 }
143 Assert.That(userInfo.HasReceivedInventory, Is.True, "FetchInventory timed out (10 seconds)");
144 157
145 UUID folderId = UUID.Parse("00000000-0000-0000-0000-000000000011"); 158 UUID folderId = UUID.Parse("00000000-0000-0000-0000-000000000011");
146 Assert.That(userInfo.RootFolder.GetChildFolder(folderId), Is.Null); 159 Assert.That(userInfo.RootFolder.GetChildFolder(folderId), Is.Null);
@@ -154,15 +167,14 @@ namespace OpenSim.Framework.Communications.Tests
154 { 167 {
155 TestHelper.InMethod(); 168 TestHelper.InMethod();
156 169
157 Scene myScene = SceneSetupHelpers.SetupScene(); 170 Scene myScene = SceneSetupHelpers.SetupScene("inventory");
158 CachedUserInfo userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager); 171 CachedUserInfo userInfo;
159 for (int i = 0 ; i < 50 ; i++) 172
160 { 173 lock (this)
161 if (userInfo.HasReceivedInventory == true) 174 {
162 break; 175 userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager, InventoryReceived);
163 Thread.Sleep(200); 176 Monitor.Wait(this, 60000);
164 } 177 }
165 Assert.That(userInfo.HasReceivedInventory, Is.True, "FetchInventory timed out (10 seconds)");
166 178
167 UUID folderId = UUID.Parse("00000000-0000-0000-0000-000000000010"); 179 UUID folderId = UUID.Parse("00000000-0000-0000-0000-000000000010");
168 Assert.That(userInfo.RootFolder.ContainsChildFolder(folderId), Is.False); 180 Assert.That(userInfo.RootFolder.ContainsChildFolder(folderId), Is.False);
@@ -190,15 +202,14 @@ namespace OpenSim.Framework.Communications.Tests
190 { 202 {
191 TestHelper.InMethod(); 203 TestHelper.InMethod();
192 204
193 Scene myScene = SceneSetupHelpers.SetupScene(); 205 Scene myScene = SceneSetupHelpers.SetupScene("inventory");
194 CachedUserInfo userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager); 206 CachedUserInfo userInfo;
195 for (int i = 0 ; i < 50 ; i++) 207
196 { 208 lock (this)
197 if (userInfo.HasReceivedInventory == true) 209 {
198 break; 210 userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager, InventoryReceived);
199 Thread.Sleep(200); 211 Monitor.Wait(this, 60000);
200 } 212 }
201 Assert.That(userInfo.HasReceivedInventory, Is.True, "FetchInventory timed out (10 seconds)");
202 213
203 UUID folder1Id = UUID.Parse("00000000-0000-0000-0000-000000000060"); 214 UUID folder1Id = UUID.Parse("00000000-0000-0000-0000-000000000060");
204 InventoryFolderImpl rootFolder = userInfo.RootFolder; 215 InventoryFolderImpl rootFolder = userInfo.RootFolder;
@@ -256,15 +267,14 @@ namespace OpenSim.Framework.Communications.Tests
256 { 267 {
257 TestHelper.InMethod(); 268 TestHelper.InMethod();
258 269
259 Scene myScene = SceneSetupHelpers.SetupScene(); 270 Scene myScene = SceneSetupHelpers.SetupScene("inventory");
260 CachedUserInfo userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager); 271 CachedUserInfo userInfo;
261 for (int i = 0 ; i < 50 ; i++) 272
262 { 273 lock (this)
263 if (userInfo.HasReceivedInventory == true) 274 {
264 break; 275 userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager, InventoryReceived);
265 Thread.Sleep(200); 276 Monitor.Wait(this, 60000);
266 } 277 }
267 Assert.That(userInfo.HasReceivedInventory, Is.True, "FetchInventory timed out (10 seconds)");
268 278
269 UUID folder1Id = UUID.Parse("00000000-0000-0000-0000-000000000020"); 279 UUID folder1Id = UUID.Parse("00000000-0000-0000-0000-000000000020");
270 UUID folder2Id = UUID.Parse("00000000-0000-0000-0000-000000000021"); 280 UUID folder2Id = UUID.Parse("00000000-0000-0000-0000-000000000021");
@@ -297,15 +307,14 @@ namespace OpenSim.Framework.Communications.Tests
297 TestHelper.InMethod(); 307 TestHelper.InMethod();
298 //log4net.Config.XmlConfigurator.Configure(); 308 //log4net.Config.XmlConfigurator.Configure();
299 309
300 Scene myScene = SceneSetupHelpers.SetupScene(); 310 Scene myScene = SceneSetupHelpers.SetupScene("inventory");
301 CachedUserInfo userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager); 311 CachedUserInfo userInfo;
302 for (int i = 0 ; i < 50 ; i++) 312
303 { 313 lock (this)
304 if (userInfo.HasReceivedInventory == true) 314 {
305 break; 315 userInfo = UserProfileTestUtils.CreateUserWithInventory(myScene.CommsManager, InventoryReceived);
306 Thread.Sleep(200); 316 Monitor.Wait(this, 60000);
307 } 317 }
308 Assert.That(userInfo.HasReceivedInventory, Is.True, "FetchInventory timed out (10 seconds)");
309 318
310 UUID folder1Id = UUID.Parse("00000000-0000-0000-0000-000000000070"); 319 UUID folder1Id = UUID.Parse("00000000-0000-0000-0000-000000000070");
311 InventoryFolderImpl rootFolder = userInfo.RootFolder; 320 InventoryFolderImpl rootFolder = userInfo.RootFolder;
@@ -322,4 +331,4 @@ namespace OpenSim.Framework.Communications.Tests
322 Assert.That(myScene.InventoryService.QueryFolder(myFolder), Is.Null); 331 Assert.That(myScene.InventoryService.QueryFolder(myFolder), Is.Null);
323 } 332 }
324 } 333 }
325} 334} \ No newline at end of file