* Adjust load iar unit test to check load of items with creator names that exist in the system but which are not the loading user

0.6.5-rc1
Justin Clarke Casey 2009-04-29 17:46:13 +00:00
parent d604cd284e
commit c56f928c80
2 changed files with 30 additions and 9 deletions

View File

@ -47,7 +47,18 @@ namespace OpenSim.Framework.Communications
public const string OSPA_NAME_VALUE_SEPARATOR = " "; public const string OSPA_NAME_VALUE_SEPARATOR = " ";
public const string OSPA_TUPLE_SEPARATOR = "|"; public const string OSPA_TUPLE_SEPARATOR = "|";
public static readonly char[] OSPA_TUPLE_SEPARATOR_ARRAY = OSPA_TUPLE_SEPARATOR.ToCharArray(); public static readonly char[] OSPA_TUPLE_SEPARATOR_ARRAY = OSPA_TUPLE_SEPARATOR.ToCharArray();
public const string OSPA_KEY_VALUE_PAIR_SEPARATOR = "="; public const string OSPA_PAIR_SEPARATOR = "=";
/// <summary>
/// Make an OSPA given an avatar name
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public static string MakeOspa(string firstName, string lastName)
{
return
OSPA_PREFIX + OSPA_NAME_KEY + OSPA_PAIR_SEPARATOR + firstName + OSPA_NAME_VALUE_SEPARATOR + lastName;
}
/// <summary> /// <summary>
/// Resolve an osp string into the most suitable internal OpenSim identifier. /// Resolve an osp string into the most suitable internal OpenSim identifier.
@ -73,7 +84,7 @@ namespace OpenSim.Framework.Communications
foreach (string tuple in ospaTuples) foreach (string tuple in ospaTuples)
{ {
int tupleSeparatorIndex = tuple.IndexOf(OSPA_TUPLE_SEPARATOR); int tupleSeparatorIndex = tuple.IndexOf(OSPA_PAIR_SEPARATOR);
if (tupleSeparatorIndex < 0) if (tupleSeparatorIndex < 0)
{ {

View File

@ -198,16 +198,20 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
[Test] [Test]
public void TestLoadIarV0p1() public void TestLoadIarV0p1()
{ {
Console.WriteLine("Started TestLoadIarV0p1()"); Console.WriteLine("Started {0}", MethodBase.GetCurrentMethod());
log4net.Config.XmlConfigurator.Configure(); log4net.Config.XmlConfigurator.Configure();
string userFirstName = "Mr"; string userFirstName = "Mr";
string userLastName = "Tiddles"; string userLastName = "Tiddles";
UUID userUuid = UUID.Parse("00000000-0000-0000-0000-000000000555"); UUID userUuid = UUID.Parse("00000000-0000-0000-0000-000000000555");
string user2FirstName = "Lord";
string user2LastName = "Lucan";
UUID user2Uuid = UUID.Parse("00000000-0000-0000-0000-000000000666");
string itemName = "b.lsl"; string itemName = "b.lsl";
string archiveItemName string archiveItemName
= string.Format("{0}{1}{2}", itemName, "_", UUID.Random()); = string.Format("{0}{1}{2}", itemName, "_", UUID.Random());
MemoryStream archiveWriteStream = new MemoryStream(); MemoryStream archiveWriteStream = new MemoryStream();
TarArchiveWriter tar = new TarArchiveWriter(archiveWriteStream); TarArchiveWriter tar = new TarArchiveWriter(archiveWriteStream);
@ -216,9 +220,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
item1.Name = itemName; item1.Name = itemName;
item1.AssetID = UUID.Random(); item1.AssetID = UUID.Random();
item1.GroupID = UUID.Random(); item1.GroupID = UUID.Random();
item1.CreatorId = userUuid.ToString(); item1.CreatorId = OspResolver.MakeOspa(user2FirstName, user2LastName);
//item1.CreatorId = userUuid.ToString();
//item1.CreatorId = "00000000-0000-0000-0000-000000000444"; //item1.CreatorId = "00000000-0000-0000-0000-000000000444";
item1.Owner = UUID.Parse(item1.CreatorId); item1.Owner = UUID.Zero;
string item1FileName string item1FileName
= string.Format("{0}{1}", ArchiveConstants.INVENTORY_PATH, archiveItemName); = string.Format("{0}{1}", ArchiveConstants.INVENTORY_PATH, archiveItemName);
@ -231,9 +236,14 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
// Annoyingly, we have to set up a scene even though inventory loading has nothing to do with a scene // Annoyingly, we have to set up a scene even though inventory loading has nothing to do with a scene
Scene scene = SceneSetupHelpers.SetupScene(); Scene scene = SceneSetupHelpers.SetupScene();
IUserAdminService userAdminService = scene.CommsManager.UserAdminService;
SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule); SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule);
scene.CommsManager.UserAdminService.AddUser( userAdminService.AddUser(
userFirstName, userLastName, "meowfood", String.Empty, 1000, 1000, userUuid); userFirstName, userLastName, "meowfood", String.Empty, 1000, 1000, userUuid);
userAdminService.AddUser(
user2FirstName, user2LastName, "hampshire", String.Empty, 1000, 1000, user2Uuid);
archiverModule.DearchiveInventory(userFirstName, userLastName, "/", archiveReadStream); archiverModule.DearchiveInventory(userFirstName, userLastName, "/", archiveReadStream);
CachedUserInfo userInfo CachedUserInfo userInfo
@ -241,10 +251,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
InventoryItemBase foundItem = userInfo.RootFolder.FindItemByPath(itemName); InventoryItemBase foundItem = userInfo.RootFolder.FindItemByPath(itemName);
// Currently, creator and ownership both revert to the loader // Currently, creator and ownership both revert to the loader
Assert.That(foundItem.CreatorId, Is.EqualTo(userUuid.ToString())); Assert.That(foundItem.CreatorId, Is.EqualTo(user2Uuid.ToString()));
Assert.That(foundItem.Owner, Is.EqualTo(userUuid)); Assert.That(foundItem.Owner, Is.EqualTo(userUuid));
Console.WriteLine("Finished TestLoadIarV0p1()"); Console.WriteLine("Successfully completed {0}", MethodBase.GetCurrentMethod());
} }
/// <summary> /// <summary>