如何在S#arp體系結構項目中測試狀態?在S#arp體系結構中測試狀態 - 最佳實踐
例如,我有一個自定義RoleProvider。我想測試方法provider.AddUsersToRoles(string [],string [])。
於是我開始:
// Arrange
const string ficticiousRole = "Management";
var userToExpect = UserInstanceFactory.CreateValidTransientUser();
var roleToExpect = RoleInstanceFactory.CreateValidTransientRole();
userRepository.Expect(r => r.GetByUsername(userToExpect.Username))
.Return(userToExpect);
roleRepository.Expect(r => r.GetByName(ficticiousRole))
.Return(roleToExpect);
var userNames = new List<string>();
var roleNames = new List<string>();
userNames.Add(userToExpect.Username);
roleNames.Add(ficticiousRole);
然後我將用戶添加到角色。然後我檢查用戶是否在這個角色。
// Act
roleProvider.AddUsersToRoles(userNames.ToArray(), roleNames.ToArray());
var isNewUserInRole = roleProvider.IsUserInRole(userToExpect.Username, ficticiousRole);
// Assert
Assert.IsTrue(isNewUserInRole);
問題是我正在使用Rhino Mocks。我對Rhino Mocks的知識有限,但根據我的理解(根據Ayende Rahien),您使用Rhino Mocks來測試操作,而不是狀態。
所以我想一個內存中的SqlLite數據庫會更合適? S#arp Arch中最好的方法是什麼?
這就是我認爲克里斯。謝謝。我只是覺得在S#中已經有一些內存數據庫已經設置好了。 – autonomatt 2010-12-01 10:49:34