aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Data/Tests/BasicAssetTest.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Data/Tests/BasicAssetTest.cs')
-rw-r--r--OpenSim/Data/Tests/BasicAssetTest.cs58
1 files changed, 45 insertions, 13 deletions
diff --git a/OpenSim/Data/Tests/BasicAssetTest.cs b/OpenSim/Data/Tests/BasicAssetTest.cs
index e80cff9..71d6314 100644
--- a/OpenSim/Data/Tests/BasicAssetTest.cs
+++ b/OpenSim/Data/Tests/BasicAssetTest.cs
@@ -42,7 +42,11 @@ namespace OpenSim.Data.Tests
42 public UUID uuid1; 42 public UUID uuid1;
43 public UUID uuid2; 43 public UUID uuid2;
44 public UUID uuid3; 44 public UUID uuid3;
45 public string critter1 = UUID.Random().ToString();
46 public string critter2 = UUID.Random().ToString();
47 public string critter3 = UUID.Random().ToString();
45 public byte[] asset1; 48 public byte[] asset1;
49 PropertyScrambler<AssetBase> scrambler;
46 50
47 public void SuperInit() 51 public void SuperInit()
48 { 52 {
@@ -53,6 +57,16 @@ namespace OpenSim.Data.Tests
53 uuid3 = UUID.Random(); 57 uuid3 = UUID.Random();
54 asset1 = new byte[100]; 58 asset1 = new byte[100];
55 asset1.Initialize(); 59 asset1.Initialize();
60
61
62 scrambler = new PropertyScrambler<AssetBase>()
63 .DontScramble(x => x.ID)
64 .DontScramble(x => x.FullID)
65 .DontScramble(x => x.Metadata.ID)
66 .DontScramble(x => x.Metadata.Type)
67 .DontScramble(x => x.Metadata.CreatorID)
68 .DontScramble(x => x.Metadata.ContentType)
69 .DontScramble(x => x.Metadata.FullID);
56 } 70 }
57 71
58 [Test] 72 [Test]
@@ -66,27 +80,17 @@ namespace OpenSim.Data.Tests
66 [Test] 80 [Test]
67 public void T010_StoreSimpleAsset() 81 public void T010_StoreSimpleAsset()
68 { 82 {
69 AssetBase a1 = new AssetBase(uuid1, "asset one", (sbyte)AssetType.Texture, UUID.Zero.ToString()); 83 AssetBase a1 = new AssetBase(uuid1, "asset one", (sbyte)AssetType.Texture, critter1);
70 AssetBase a2 = new AssetBase(uuid2, "asset two", (sbyte)AssetType.Texture, UUID.Zero.ToString()); 84 AssetBase a2 = new AssetBase(uuid2, "asset two", (sbyte)AssetType.Texture, critter2);
71 AssetBase a3 = new AssetBase(uuid3, "asset three", (sbyte)AssetType.Texture, UUID.Zero.ToString()); 85 AssetBase a3 = new AssetBase(uuid3, "asset three", (sbyte)AssetType.Texture, critter3);
72 a1.Data = asset1; 86 a1.Data = asset1;
73 a2.Data = asset1; 87 a2.Data = asset1;
74 a3.Data = asset1; 88 a3.Data = asset1;
75 89
76 PropertyScrambler<AssetBase> scrambler = new PropertyScrambler<AssetBase>()
77 .DontScramble(x => x.Data)
78 .DontScramble(x => x.ID)
79 .DontScramble(x => x.FullID)
80 .DontScramble(x => x.Metadata.ID)
81 .DontScramble(x => x.Metadata.CreatorID)
82 .DontScramble(x => x.Metadata.ContentType)
83 .DontScramble(x => x.Metadata.FullID);
84
85 scrambler.Scramble(a1); 90 scrambler.Scramble(a1);
86 scrambler.Scramble(a2); 91 scrambler.Scramble(a2);
87 scrambler.Scramble(a3); 92 scrambler.Scramble(a3);
88 93
89
90 db.StoreAsset(a1); 94 db.StoreAsset(a1);
91 db.StoreAsset(a2); 95 db.StoreAsset(a2);
92 db.StoreAsset(a3); 96 db.StoreAsset(a3);
@@ -130,5 +134,33 @@ namespace OpenSim.Data.Tests
130 Assert.That(metadata.Temporary, Is.EqualTo(a1b.Temporary)); 134 Assert.That(metadata.Temporary, Is.EqualTo(a1b.Temporary));
131 Assert.That(metadata.FullID, Is.EqualTo(a1b.FullID)); 135 Assert.That(metadata.FullID, Is.EqualTo(a1b.FullID));
132 } 136 }
137
138
139 [Test]
140 public void T020_CheckForWeirdCreatorID()
141 {
142 // It is expected that eventually the CreatorID might be an arbitrary string (an URI)
143 // rather than a valid UUID (?). This test is to make sure that the database layer does not
144 // attempt to convert CreatorID to GUID, but just passes it both ways as a string.
145 AssetBase a1 = new AssetBase(uuid1, "asset one", (sbyte)AssetType.Texture, critter1);
146 AssetBase a2 = new AssetBase(uuid2, "asset two", (sbyte)AssetType.Texture, "This is not a GUID!");
147 AssetBase a3 = new AssetBase(uuid3, "asset three", (sbyte)AssetType.Texture, "");
148 a1.Data = asset1;
149 a2.Data = asset1;
150 a3.Data = asset1;
151
152 db.StoreAsset(a1);
153 db.StoreAsset(a2);
154 db.StoreAsset(a3);
155
156 AssetBase a1a = db.GetAsset(uuid1);
157 Assert.That(a1a, Constraints.PropertyCompareConstraint(a1));
158
159 AssetBase a2a = db.GetAsset(uuid2);
160 Assert.That(a2a, Constraints.PropertyCompareConstraint(a2));
161
162 AssetBase a3a = db.GetAsset(uuid3);
163 Assert.That(a3a, Constraints.PropertyCompareConstraint(a3));
164 }
133 } 165 }
134} 166}