mirror of
https://github.com/opensim/opensim.git
synced 2026-06-30 11:07:02 +08:00
Adding in Reflection-based testing, to ensure that all properties are covered.
This commit is contained in:
committed by
Teravus Ovares (Dan Olivares)
parent
58d2775ff2
commit
23d478f2fa
@@ -168,6 +168,7 @@ namespace OpenSim.Data.MySQL
|
||||
}
|
||||
asset.Name = (string) dbReader["name"];
|
||||
asset.Type = (sbyte) dbReader["assetType"];
|
||||
asset.Temporary = (bool)dbReader["temporary"];
|
||||
}
|
||||
dbReader.Close();
|
||||
cmd.Dispose();
|
||||
|
||||
@@ -342,7 +342,7 @@ namespace OpenSim.Data.MySQL
|
||||
item.EveryOnePermissions = (uint) reader["inventoryEveryOnePermissions"];
|
||||
item.GroupPermissions = (uint) reader["inventoryGroupPermissions"];
|
||||
item.SalePrice = (int) reader["salePrice"];
|
||||
item.SaleType = Convert.ToByte(reader["saleType"]);
|
||||
item.SaleType = unchecked((byte)(Convert.ToSByte(reader["saleType"])));
|
||||
item.CreationDate = (int) reader["creationDate"];
|
||||
item.GroupOwned = Convert.ToBoolean(reader["groupOwned"]);
|
||||
item.Flags = (uint) reader["flags"];
|
||||
@@ -423,7 +423,7 @@ namespace OpenSim.Data.MySQL
|
||||
/// <summary>
|
||||
/// Returns a specified inventory folder
|
||||
/// </summary>
|
||||
/// <param name="folder">The folder to return</param>
|
||||
/// <param name="folderID">The folder to return</param>
|
||||
/// <returns>A folder class</returns>
|
||||
public InventoryFolderBase getInventoryFolder(UUID folderID)
|
||||
{
|
||||
@@ -438,8 +438,9 @@ namespace OpenSim.Data.MySQL
|
||||
result.Parameters.AddWithValue("?uuid", folderID.ToString());
|
||||
MySqlDataReader reader = result.ExecuteReader();
|
||||
|
||||
reader.Read();
|
||||
InventoryFolderBase folder = readInventoryFolder(reader);
|
||||
InventoryFolderBase folder = null;
|
||||
if(reader.Read())
|
||||
folder = readInventoryFolder(reader);
|
||||
reader.Close();
|
||||
result.Dispose();
|
||||
|
||||
@@ -506,7 +507,7 @@ namespace OpenSim.Data.MySQL
|
||||
result.Parameters.AddWithValue("?inventoryEveryOnePermissions", item.EveryOnePermissions);
|
||||
result.Parameters.AddWithValue("?inventoryGroupPermissions", item.GroupPermissions);
|
||||
result.Parameters.AddWithValue("?salePrice", item.SalePrice);
|
||||
result.Parameters.AddWithValue("?saleType", item.SaleType);
|
||||
result.Parameters.AddWithValue("?saleType", unchecked((sbyte)item.SaleType));
|
||||
result.Parameters.AddWithValue("?creationDate", item.CreationDate);
|
||||
result.Parameters.AddWithValue("?groupID", item.GroupID);
|
||||
result.Parameters.AddWithValue("?groupOwned", item.GroupOwned);
|
||||
|
||||
@@ -834,7 +834,10 @@ namespace OpenSim.Data.MySQL
|
||||
// explicit conversion of integers is required, which sort
|
||||
// of sucks. No idea if there is a shortcut here or not.
|
||||
prim.CreationDate = Convert.ToInt32(row["CreationDate"]);
|
||||
prim.Name = (String) row["Name"];
|
||||
if (row["Name"] != DBNull.Value)
|
||||
prim.Name = (String)row["Name"];
|
||||
else
|
||||
prim.Name = string.Empty;
|
||||
// various text fields
|
||||
prim.Text = (String) row["Text"];
|
||||
prim.Color = Color.FromArgb(Convert.ToInt32(row["ColorA"]),
|
||||
@@ -945,12 +948,12 @@ namespace OpenSim.Data.MySQL
|
||||
prim.DIE_AT_EDGE = true;
|
||||
|
||||
prim.SalePrice = Convert.ToInt32(row["SalePrice"]);
|
||||
prim.ObjectSaleType = Convert.ToByte(row["SaleType"]);
|
||||
prim.ObjectSaleType = unchecked((byte)Convert.ToSByte(row["SaleType"]));
|
||||
|
||||
prim.Material = Convert.ToByte(row["Material"]);
|
||||
prim.Material = unchecked((byte)Convert.ToSByte(row["Material"]));
|
||||
|
||||
if (!(row["ClickAction"] is DBNull))
|
||||
prim.ClickAction = (byte)Convert.ToByte(row["ClickAction"]);
|
||||
prim.ClickAction = unchecked((byte)Convert.ToSByte(row["ClickAction"]));
|
||||
|
||||
prim.CollisionSound = new UUID(row["CollisionSound"].ToString());
|
||||
prim.CollisionSoundVolume = Convert.ToSingle(row["CollisionSoundVolume"]);
|
||||
@@ -1277,12 +1280,12 @@ namespace OpenSim.Data.MySQL
|
||||
cmd.Parameters.AddWithValue("DieAtEdge", 0);
|
||||
|
||||
cmd.Parameters.AddWithValue("SalePrice", prim.SalePrice);
|
||||
cmd.Parameters.AddWithValue("SaleType", Convert.ToInt16(prim.ObjectSaleType));
|
||||
cmd.Parameters.AddWithValue("SaleType", unchecked((sbyte)(prim.ObjectSaleType)));
|
||||
|
||||
byte clickAction = prim.ClickAction;
|
||||
cmd.Parameters.AddWithValue("ClickAction", clickAction);
|
||||
cmd.Parameters.AddWithValue("ClickAction", unchecked((sbyte)(clickAction)));
|
||||
|
||||
cmd.Parameters.AddWithValue("Material", prim.Material);
|
||||
cmd.Parameters.AddWithValue("Material", unchecked((sbyte)(prim.Material)));
|
||||
|
||||
cmd.Parameters.AddWithValue("CollisionSound", prim.CollisionSound.ToString());
|
||||
cmd.Parameters.AddWithValue("CollisionSoundVolume", prim.CollisionSoundVolume);
|
||||
|
||||
@@ -62,11 +62,18 @@ namespace OpenSim.Data.MySQL.Tests
|
||||
m_log.Error("Exception {0}", e);
|
||||
Assert.Ignore();
|
||||
}
|
||||
|
||||
// This actually does the roll forward assembly stuff
|
||||
Assembly assem = GetType().Assembly;
|
||||
Migration m = new Migration(database.Connection, assem, "GridStore");
|
||||
|
||||
m.Update();
|
||||
}
|
||||
|
||||
[TestFixtureTearDown]
|
||||
public void Cleanup()
|
||||
{
|
||||
m_log.Warn("Cleaning up.");
|
||||
if (db != null)
|
||||
{
|
||||
db.Dispose();
|
||||
@@ -74,6 +81,7 @@ namespace OpenSim.Data.MySQL.Tests
|
||||
// if a new table is added, it has to be dropped here
|
||||
if (database != null)
|
||||
{
|
||||
database.ExecuteSql("drop table migrations");
|
||||
database.ExecuteSql("drop table regions");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,6 +53,7 @@ namespace OpenSim.Data.MySQL.Tests
|
||||
try
|
||||
{
|
||||
database = new MySQLManager(connect);
|
||||
DropTables();
|
||||
db = new MySQLInventoryData();
|
||||
db.Initialise(connect);
|
||||
}
|
||||
@@ -72,10 +73,15 @@ namespace OpenSim.Data.MySQL.Tests
|
||||
}
|
||||
if (database != null)
|
||||
{
|
||||
database.ExecuteSql("drop table inventoryitems");
|
||||
database.ExecuteSql("drop table inventoryfolders");
|
||||
database.ExecuteSql("drop table migrations");
|
||||
DropTables();
|
||||
}
|
||||
}
|
||||
|
||||
private void DropTables()
|
||||
{
|
||||
database.ExecuteSql("drop table IF EXISTS inventoryitems");
|
||||
database.ExecuteSql("drop table IF EXISTS inventoryfolders");
|
||||
database.ExecuteSql("drop table IF EXISTS migrations");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user