Revision: 175
http://svn.sourceforge.net/nmailserver/?rev=175&view=rev
Author: tmyroadctfig
Date: 2007-03-12 22:04:17 -0700 (Mon, 12 Mar 2007)
Log Message:
-----------
Added some local store data unit tests.
Modified Paths:
--------------
NMail/trunk/NMail.UnitTests/LocalStoreData/CreateUserTest1.cs
NMail/trunk/NMail.UnitTests/LocalStoreData/MySqlLocalStoreTests.cs
NMail/trunk/NMail.UnitTests/NMail.UnitTests.csproj
Added Paths:
-----------
NMail/trunk/NMail.UnitTests/LocalStoreData/CreateCalendarTest1.cs
NMail/trunk/NMail.UnitTests/LocalStoreData/CreateCalendarTest2.cs
NMail/trunk/NMail.UnitTests/LocalStoreData/CreateEventEntryTest1.cs
NMail/trunk/NMail.UnitTests/LocalStoreData/CreateUserTest2.cs
NMail/trunk/NMail.UnitTests/LocalStoreData/DeleteUserTest1.cs
NMail/trunk/NMail.UnitTests/LocalStoreData/DeleteUserTest2.cs
Removed Paths:
-------------
NMail/trunk/NMail.UnitTests/LocalStoreData/CalendarTests.cs
Deleted: NMail/trunk/NMail.UnitTests/LocalStoreData/CalendarTests.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/CalendarTests.cs 2007-03-11 15:17:37 UTC (rev 174)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/CalendarTests.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -1,82 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-using NUnit.Framework;
-
-using NMail.Configuration;
-using NMail.DataTypes.Calendar;
-using NMail.DataTypes.LocalStore;
-using NMail.LocalStoreData.MySql;
-
-namespace NMail.UnitTests.LocalStoreData {
- /// <summary>
- /// Calendar tests for the local store data.
- /// </summary>
- [TestFixture]
- public class CalendarTests : BaseLocalStoreDataTest {
-
- public void CreateCalendar(string name, int ownerId, int parentId) {
- Calendar c1 = new Calendar();
- c1.Name = name;
- c1.OwnerUserId = ownerId;
- c1.ParentFolderId = parentId;
-
- localStoreData.SaveCalandar(c1);
- }
-
- public void DeleteCalendar(int calendarId) {
- localStoreData.DeleteCalandar(calendarId);
- }
-
- [Test]
- public void TestCreateCalendar() {
- CreateCalendar("Test", 1, 1);
-
- // Clean up
- Calendar c = localStoreData.GetCalandar("Test", 1);
- DeleteCalendar(c.CalendarId);
- }
-
- [Test]
- public void TestCreateCalendarDuplicate() {
- CreateCalendar("Test", 1, 1);
-
- try {
- CreateCalendar("Test", 1, 1);
-
- Assert.Fail("Allowed duplicate calendar names.");
-
- } catch (ArgumentException ex) {
- // Ignore
- }
-
- // Clean up
- Calendar c = localStoreData.GetCalandar("Test", 1);
- localStoreData.DeleteCalandar(c.CalendarId);
- }
-
- [Test]
- public void TestCreateEventEntry() {
- CreateCalendar("Test", 1, 1);
-
- Calendar c1 = localStoreData.GetCalandar("Test", 1);
-
- DateTime startTime = DateTime.Now;
- EventEntry e1 = new EventEntry();
- e1.Calendar = c1;
- e1.Categories.Add("Sample category.");
- e1.Classification = NMail.DataTypes.Classification.Private;
- e1.StartTime = startTime;
-
- localStoreData.SaveCalendarEntry(e1);
-
- IList<CalendarEntry> entries = localStoreData.GetCalendarEntries(startTime, DateTime.Now, c1.CalendarId);
-
- Assert.AreEqual(1, entries.Count, "Entries.count == 1");
- Assert.AreEqual(e1.EntryId, entries[0].EntryId, "e1.EntryId == entries[0].EntryId");
-
- DeleteCalendar(c1.CalendarId);
- }
- }
-}
Added: NMail/trunk/NMail.UnitTests/LocalStoreData/CreateCalendarTest1.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/CreateCalendarTest1.cs (rev 0)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/CreateCalendarTest1.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+using NUnit.Framework;
+
+using NMail.Configuration;
+using NMail.DataTypes.Calendar;
+using NMail.DataTypes.LocalStore;
+using NMail.LocalStoreData.MySql;
+
+namespace NMail.UnitTests.LocalStoreData {
+ /// <summary>
+ /// Calendar tests for the local store data.
+ /// </summary>
+ [TestFixture]
+ public class CreateCalendarTest1 : BaseLocalStoreDataTest {
+
+ [Test]
+ public void TestCreateCalendar() {
+ Calendar c1 = new Calendar();
+ c1.Name = "Test";
+ c1.OwnerUserId = 1;
+ c1.ParentFolderId = 1;
+
+ localStoreData.SaveCalandar(c1);
+
+ Assert.IsTrue(c1.CalendarId > 0, "Valid calendar Id.");
+ }
+ }
+}
Added: NMail/trunk/NMail.UnitTests/LocalStoreData/CreateCalendarTest2.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/CreateCalendarTest2.cs (rev 0)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/CreateCalendarTest2.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -0,0 +1,41 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+using NUnit.Framework;
+
+using NMail.Configuration;
+using NMail.DataTypes.Calendar;
+using NMail.DataTypes.LocalStore;
+using NMail.LocalStoreData.MySql;
+
+namespace NMail.UnitTests.LocalStoreData {
+ /// <summary>
+ /// Calendar tests for the local store data.
+ /// </summary>
+ [TestFixture]
+ public class CreateCalendarTest2 : BaseLocalStoreDataTest {
+
+ [Test]
+ [ExpectedException(typeof(System.Data.DuplicateNameException))]
+ public void TestCreateCalendarDuplicate() {
+ Calendar c1 = new Calendar();
+ c1.Name = "Test";
+ c1.OwnerUserId = 1;
+ c1.ParentFolderId = 1;
+
+ localStoreData.SaveCalandar(c1);
+
+ Assert.IsTrue(c1.CalendarId > 0, "Valid calendar Id.");
+
+ Calendar c2 = new Calendar();
+ c2.Name = "Test";
+ c2.OwnerUserId = 1;
+ c2.ParentFolderId = 1;
+
+ localStoreData.SaveCalandar(c2);
+
+ Assert.Fail("Allowed duplicate calendar names.");
+ }
+ }
+}
Added: NMail/trunk/NMail.UnitTests/LocalStoreData/CreateEventEntryTest1.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/CreateEventEntryTest1.cs (rev 0)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/CreateEventEntryTest1.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+using NUnit.Framework;
+
+using NMail.Configuration;
+using NMail.DataTypes.Calendar;
+using NMail.DataTypes.LocalStore;
+using NMail.LocalStoreData.MySql;
+
+namespace NMail.UnitTests.LocalStoreData {
+ /// <summary>
+ /// Calendar tests for the local store data.
+ /// </summary>
+ [TestFixture]
+ public class CreateEventEntryTest1 : BaseLocalStoreDataTest {
+
+ [Test]
+ public void TestCreateEventEntry() {
+ Calendar c1 = new Calendar();
+ c1.Name = "Test";
+ c1.OwnerUserId = 1;
+ c1.ParentFolderId = 1;
+
+ localStoreData.SaveCalandar(c1);
+
+ Assert.IsTrue(c1.CalendarId > 0, "Valid calendar Id.");
+
+ Calendar c2 = localStoreData.GetCalandar("Test", c1.CalendarId);
+
+ DateTime startTime = DateTime.Now;
+ EventEntry e1 = new EventEntry();
+ e1.Calendar = c2;
+ e1.OwnerUserId = c2.OwnerUserId;
+ e1.Categories.Add("Sample category.");
+ e1.Classification = NMail.DataTypes.Classification.Private;
+ e1.StartTime = startTime;
+
+ localStoreData.SaveCalendarEntry(e1);
+
+ IList<CalendarEntry> entries = localStoreData.GetCalendarEntries(startTime, DateTime.Now, c2.CalendarId);
+
+ Assert.AreEqual(1, entries.Count, "Entries.count == 1");
+ Assert.AreEqual(e1.EntryId, entries[0].EntryId, "e1.EntryId == entries[0].EntryId");
+ }
+ }
+}
Modified: NMail/trunk/NMail.UnitTests/LocalStoreData/CreateUserTest1.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/CreateUserTest1.cs 2007-03-11 15:17:37 UTC (rev 174)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/CreateUserTest1.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -18,7 +18,12 @@
[Test]
public void TestCreateUser() {
- //this.localStoreData.CreateUser();
+ LocalStoreUser user = new LocalStoreUser();
+ user.Username = "Test";
+ this.localStoreData.CreateUser(user);
+
+ Assert.IsTrue(user.UserId > 0, "Valid user Id.");
+ Assert.IsTrue(user.UserFolderId > 0, "Valid user folder Id.");
}
}
}
Added: NMail/trunk/NMail.UnitTests/LocalStoreData/CreateUserTest2.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/CreateUserTest2.cs (rev 0)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/CreateUserTest2.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+using NUnit.Framework;
+
+using NMail.Configuration;
+using NMail.DataTypes.Calendar;
+using NMail.DataTypes.LocalStore;
+using NMail.LocalStoreData.MySql;
+
+namespace NMail.UnitTests.LocalStoreData {
+ /// <summary>
+ /// Tests creating a duplicate user.
+ /// </summary>
+ [TestFixture]
+ public class CreateUserTest2 : BaseLocalStoreDataTest {
+
+ [Test]
+ [ExpectedException(typeof(System.Data.DuplicateNameException))]
+ public void TestCreateDuplicateUser() {
+ LocalStoreUser user1 = new LocalStoreUser();
+ user1.Username = "Test";
+ this.localStoreData.CreateUser(user1);
+
+ Assert.IsTrue(user1.UserId > 0, "Valid user Id.");
+ Assert.IsTrue(user1.UserFolderId > 0, "Valid user folder Id.");
+
+ LocalStoreUser user2 = new LocalStoreUser();
+ user2.Username = "Test";
+ this.localStoreData.CreateUser(user2);
+
+ Assert.Fail("Allowed duplicate user names.");
+ }
+ }
+}
Added: NMail/trunk/NMail.UnitTests/LocalStoreData/DeleteUserTest1.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/DeleteUserTest1.cs (rev 0)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/DeleteUserTest1.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+using NUnit.Framework;
+
+using NMail.Configuration;
+using NMail.DataTypes.Calendar;
+using NMail.DataTypes.LocalStore;
+using NMail.LocalStoreData.MySql;
+
+namespace NMail.UnitTests.LocalStoreData {
+ /// <summary>
+ /// Tests deleting a user.
+ /// </summary>
+ [TestFixture]
+ public class DeleteUserTest1 : BaseLocalStoreDataTest {
+
+ [Test]
+ public void TestDeleteUser() {
+ LocalStoreUser user1 = new LocalStoreUser();
+ user1.Username = "Test";
+ this.localStoreData.CreateUser(user1);
+
+ Assert.IsTrue(user1.UserId > 0, "Valid user Id.");
+ Assert.IsTrue(user1.UserFolderId > 0, "Valid user folder Id.");
+
+ IList<StoreFolder> userFolders = this.localStoreData.GetUserFolders(user1.UserId);
+
+ Assert.IsNotNull(userFolders, "User folders list not null.");
+ Assert.IsTrue(userFolders.Count > 0, "User has folders.");
+
+ foreach (StoreFolder folder in userFolders) {
+ this.localStoreData.DeleteFolder(folder.FolderId);
+ }
+
+ this.localStoreData.DeleteUser(user1.UserId);
+
+ IList<LocalStoreUser> users = this.localStoreData.GetUsers();
+
+ Assert.AreEqual(0, users.Count, "Users.count == 0");
+ }
+ }
+}
Added: NMail/trunk/NMail.UnitTests/LocalStoreData/DeleteUserTest2.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/DeleteUserTest2.cs (rev 0)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/DeleteUserTest2.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -0,0 +1,39 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+using NUnit.Framework;
+
+using NMail.Configuration;
+using NMail.DataTypes.Calendar;
+using NMail.DataTypes.LocalStore;
+using NMail.LocalStoreData.MySql;
+
+namespace NMail.UnitTests.LocalStoreData {
+ /// <summary>
+ /// Tests deleting a user.
+ /// </summary>
+ [TestFixture]
+ public class DeleteUserTest2 : BaseLocalStoreDataTest {
+
+ [Test]
+ [ExpectedException(typeof(System.Data.ConstraintException))]
+ public void TestDeleteUser() {
+ LocalStoreUser user1 = new LocalStoreUser();
+ user1.Username = "Test";
+ this.localStoreData.CreateUser(user1);
+
+ Assert.IsTrue(user1.UserId > 0, "Valid user Id.");
+ Assert.IsTrue(user1.UserFolderId > 0, "Valid user folder Id.");
+
+ IList<StoreFolder> userFolders = this.localStoreData.GetUserFolders(user1.UserId);
+
+ Assert.IsNotNull(userFolders, "User folders list not null.");
+ Assert.IsTrue(userFolders.Count > 0, "User has folders.");
+
+ this.localStoreData.DeleteUser(user1.UserId);
+
+ Assert.Fail("Failed to throw an exception when user has folders.");
+ }
+ }
+}
Modified: NMail/trunk/NMail.UnitTests/LocalStoreData/MySqlLocalStoreTests.cs
===================================================================
--- NMail/trunk/NMail.UnitTests/LocalStoreData/MySqlLocalStoreTests.cs 2007-03-11 15:17:37 UTC (rev 174)
+++ NMail/trunk/NMail.UnitTests/LocalStoreData/MySqlLocalStoreTests.cs 2007-03-13 05:04:17 UTC (rev 175)
@@ -27,16 +27,18 @@
public const string TestFolder = "testfolder";
- [Test]
- public void TestCreateUser() {
- LocalStoreUserResult result = localStoreData.CreateUser(TestUsername, null, null);
- Assert.AreEqual(LocalStoreUserResult.OkSuccessful, result, "User created successfully.");
+ //[Test]
+ //public void TestCreateUser() {
+ // LocalStoreUser user = new LocalStoreUser();
+ // user.Username = TestUsername;
+ // LocalStoreUserResult result = localStoreData.CreateUser(user);
+ // Assert.AreEqual(LocalStoreUserResult.OkSuccessful, result, "User created successfully.");
- LocalStoreUser user = localStoreData.GetUser(TestUsername);
- Assert.IsNotNull(user, "Valid user.");
- Assert.IsTrue(user.UserId > 0, "Valid user Id");
- Assert.IsTrue(user.UserFolderId > 0, "Valid user folder Id");
- }
+ // LocalStoreUser user = localStoreData.GetUser(TestUsername);
+ // Assert.IsNotNull(user, "Valid user.");
+ // Assert.IsTrue(user.UserId > 0, "Valid user Id");
+ // Assert.IsTrue(user.UserFolderId > 0, "Valid user folder Id");
+ //}
[Test]
public void CreateFolder() {
@@ -53,34 +55,34 @@
Assert.AreEqual(LocalStoreFolderResult.OkSuccessful, result, "Created folder successfully.");
}
- [Test]
- public void TestDeleteUser() {
- // Make an initial delete attempt (which should fail)
- int userId = localStoreData.GetUser(TestUsername).UserId;
- LocalStoreUserResult result = localStoreData.DeleteUser(userId);
- Assert.AreEqual(LocalStoreUserResult.UserStillHasFolders, result, "User deleted fails with still has folders.");
+ //[Test]
+ //public void TestDeleteUser() {
+ // // Make an initial delete attempt (which should fail)
+ // int userId = localStoreData.GetUser(TestUsername).UserId;
+ // LocalStoreUserResult result = localStoreData.DeleteUser(userId);
+ // Assert.AreEqual(LocalStoreUserResult.UserStillHasFolders, result, "User deleted fails with still has folders.");
- // Delete all the user's folders
- Queue<StoreFolder> folders = new Queue<StoreFolder>(localStoreData.GetUserFolders(userId));
+ // // Delete all the user's folders
+ // Queue<StoreFolder> folders = new Queue<StoreFolder>(localStoreData.GetUserFolders(userId));
- while (folders.Count > 0) {
- StoreFolder folder = folders.Dequeue();
- LocalStoreFolderResult folderResult = localStoreData.DeleteFolder(folder.FolderId);
+ // while (folders.Count > 0) {
+ // StoreFolder folder = folders.Dequeue();
+ // LocalStoreFolderResult folderResult = localStoreData.DeleteFolder(folder.FolderId);
- if (folderResult == LocalStoreFolderResult.OkSuccessful) {
- continue;
+ // if (folderResult == LocalStoreFolderResult.OkSuccessful) {
+ // continue;
- } else if (folderResult != LocalStoreFolderResult.HasChildren) {
- throw new InvalidOperationException(string.Format("Error deleting user's folder. Id: {0}", folder.FolderId));
+ // } else if (folderResult != LocalStoreFolderResult.HasChildren) {
+ // throw new InvalidOperationException(string.Format("Error deleting user's folder. Id: {0}", folder.FolderId));
- } else {
- folders.Enqueue(folder);
- }
- }
+ // } else {
+ // folders.Enqueue(folder);
+ // }
+ // }
- // Attempt to delete the user again
- result = localStoreData.DeleteUser(userId);
- Assert.AreEqual(LocalStoreUserResult.OkSuccessful, result, "User deleted successfully.");
- }
+ // // Attempt to delete the user again
+ // result = localStoreData.DeleteUser(userId);
+ // Assert.AreEqual(LocalStoreUserResult.OkSuccessful, result, "User deleted successfully.");
+ //}
}
}
Modified: NMail/trunk/NMail.UnitTests/NMail.UnitTests.csproj
===================================================================
--- NMail/trunk/NMail.UnitTests/NMail.UnitTests.csproj 2007-03-11 15:17:37 UTC (rev 174)
+++ NMail/trunk/NMail.UnitTests/NMail.UnitTests.csproj 2007-03-13 05:04:17 UTC (rev 175)
@@ -52,7 +52,12 @@
<Compile Include="DataTypes\Helper\MimeHelperTests.cs" />
<Compile Include="DataTypes\Helper\StringTokenizerTests.cs" />
<Compile Include="LocalStoreData\BaseLocalStoreDataTest.cs" />
- <Compile Include="LocalStoreData\CalendarTests.cs" />
+ <Compile Include="LocalStoreData\DeleteUserTest2.cs" />
+ <Compile Include="LocalStoreData\DeleteUserTest1.cs" />
+ <Compile Include="LocalStoreData\CreateEventEntryTest1.cs" />
+ <Compile Include="LocalStoreData\CreateCalendarTest2.cs" />
+ <Compile Include="LocalStoreData\CreateCalendarTest1.cs" />
+ <Compile Include="LocalStoreData\CreateUserTest2.cs" />
<Compile Include="LocalStoreData\CreateUserTest1.cs" />
<Compile Include="LocalStoreData\MySqlLocalStoreTests.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|