push for shank
This commit is contained in:
parent
0162186416
commit
347d701b7f
5 changed files with 65 additions and 16 deletions
103
UnitTests/ItemManagerTest.cs
Normal file
103
UnitTests/ItemManagerTest.cs
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
using System;
|
||||
using System.Text;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using System.IO;
|
||||
using System.Data;
|
||||
using System.ComponentModel;
|
||||
using System.Diagnostics;
|
||||
using System.Net;
|
||||
using System.Reflection;
|
||||
using System.Threading;
|
||||
using Community.CsharpSqlite.SQLiteClient;
|
||||
using TShockAPI.DB;
|
||||
using TShockAPI;
|
||||
|
||||
namespace UnitTests
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// Summary description for UnitTest1
|
||||
/// </summary>
|
||||
[TestClass]
|
||||
public class ItemManagerTest
|
||||
{
|
||||
public static IDbConnection DB;
|
||||
[TestInitialize]
|
||||
public void Initialize()
|
||||
{
|
||||
TShock.Config = new ConfigFile();
|
||||
TShock.Config.StorageType = "sqlite";
|
||||
|
||||
DB = new SqliteConnection(string.Format("uri=file://{0},Version=3", "tshock.test.sqlite"));
|
||||
DB.Open();
|
||||
/*try
|
||||
{
|
||||
var hostport = Config.MySqlHost.Split(':');
|
||||
DB = new MySqlConnection();
|
||||
DB.ConnectionString = String.Format("Server='{0}'; Port='{1}'; Database='{2}'; Uid='{3}'; Pwd='{4}';",
|
||||
hostport[0],
|
||||
hostport.Length > 1 ? hostport[1] : "3306",
|
||||
Config.MySqlDbName,
|
||||
Config.MySqlUsername,
|
||||
Config.MySqlPassword
|
||||
);
|
||||
DB.Open();
|
||||
}
|
||||
catch (MySqlException ex)
|
||||
{
|
||||
Log.Error(ex.ToString());
|
||||
throw new Exception("MySql not setup correctly");
|
||||
}*/
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void SQLiteItemTest_AddBan()
|
||||
{
|
||||
//
|
||||
// TODO: Add test logic here
|
||||
//
|
||||
ItemManager manager = new ItemManager(DB);
|
||||
Assert.IsNotNull(manager);
|
||||
Assert.AreEqual( false, manager.ItemIsBanned("Dirt Block"), "Item isn't banned" );
|
||||
manager.AddNewBan("Dirt Block");
|
||||
Assert.AreEqual(true, manager.ItemIsBanned("Dirt Block"), "New item is added");
|
||||
Assert.AreEqual(false, manager.ItemIsBanned("Green Brick"), "Item isn't banned");
|
||||
manager.AddNewBan("Green Brick");
|
||||
Assert.AreEqual(true, manager.ItemIsBanned("Green Brick"), "New item is added");
|
||||
Assert.AreEqual(2, manager.ItemBans.Count, "Adding both items");
|
||||
manager.AddNewBan("Green Brick" );
|
||||
Assert.AreEqual(2, manager.ItemBans.Count, "Adding duplicate items");
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void SQLiteItemTest_RemoveBan()
|
||||
{
|
||||
//
|
||||
// TODO: Add test logic here
|
||||
//
|
||||
ItemManager manager = new ItemManager(DB);
|
||||
Assert.IsNotNull(manager);
|
||||
Assert.AreEqual(2, manager.ItemBans.Count);
|
||||
manager.AddNewBan("Dirt Block");
|
||||
Assert.AreEqual(2, manager.ItemBans.Count);
|
||||
Assert.AreEqual(true, manager.ItemIsBanned("Dirt Block"));
|
||||
manager.RemoveBan("Dirt Block");
|
||||
manager.UpdateItemBans();
|
||||
Assert.AreEqual(1, manager.ItemBans.Count);
|
||||
Assert.AreEqual(false, manager.ItemIsBanned("Dirt Block"));
|
||||
manager.RemoveBan("Dirt Block");
|
||||
Assert.AreEqual(false, manager.ItemIsBanned("Dirt Block"));
|
||||
Assert.AreEqual(true, manager.ItemIsBanned("Green Brick"));
|
||||
manager.RemoveBan("Green Brick");
|
||||
Assert.AreEqual(false, manager.ItemIsBanned("Green Brick"));
|
||||
}
|
||||
|
||||
[TestCleanup]
|
||||
public void Cleanup()
|
||||
{
|
||||
DB.Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue