public void Info_WhenGroupExists_ReturnsViewWithCorrectModel() { // Arrange using (var session = DocumentStore.OpenSession()) { var testGroup = new Group { Name = "TestGroup", }; session.Store(testGroup); session.SaveChanges(); var sut = new GroupController(session); // Act var result = sut.Info("TestGroup") as ViewResult; // Assert Assert.NotNull(result); Assert.IsType<GroupInfoModel>(result.Model); var viewModel = result.Model as GroupInfoModel; Assert.NotNull(viewModel); Assert.Same(testGroup, viewModel.Group); Assert.Equal("Info", result.ViewName); } }
public void Index_WhenCalled_InjectsGroupsIntoViewBag() { // Arrange var session = DocumentStore.OpenSession(); var controller = new HomeController(session); var group = new Group { Name = "Test group", Created = DateTime.Now }; session.Store(group); session.SaveChanges(); // Act var viewResult = controller.Index() as ViewResult; // Assert Assert.NotNull(viewResult); var groupSequence = viewResult.Model as IEnumerable<Group>; Assert.NotNull(groupSequence); var groups = groupSequence as IList<Group> ?? groupSequence.ToList(); Assert.Equal(1, groups.Count()); Assert.Equal("Test group", groups.Single().Name); }
public void Info_WhenUserExists_ReturnsExpectedViewAndCorrectModel() { // Arrange using (var session = DocumentStore.OpenSession()) { var user = new User {Name = "Some guy"}; var group1 = new Group {Name = "First group"}; var group2 = new Group {Name = "Second group"}; group1.AddMember("users/1"); group2.AddMember("users/1"); session.Store(user); session.Store(group1); session.Store(group2); session.SaveChanges(); } using (var newSession = DocumentStore.OpenSession()) { var sut = new UserController(newSession); // Act var result = sut.Info("users/1"); // Assert Assert.IsType<ViewResult>(result); var viewResult = result as ViewResult; Assert.IsType<UserProfileModel>(viewResult.Model); var model = viewResult.Model as UserProfileModel; Assert.NotNull(model.User); Assert.Equal("Some guy", model.User.Name); Assert.True(model.Groups.Any(g => g.Name == "First group")); Assert.True(model.Groups.Any(g => g.Name == "Second group")); } }
private void AddRandomMembers(Group grp) { var numberOfMembers = _random.Next(1,Users.Count); var members = Users.OrderBy(x => _random.Next()) .Take(numberOfMembers) .ToList(); grp.AddMembers(members.Select(m => m.Id)); grp.Organizer = members.First().Id; }
private void AddRandomTags(Group grp) { var tags = new List<string> { "C#", "Java", ".Net", "Scrum", "Agile", "Javascript", "Knivstikking", "Karsk", "Sykdom", "Tegnefilm", "Arduino", "Dårlig humor", "Smålighet", "Bitterhet", "Bråk", "Programmering", "Pair programming", "Silverlight", "WPF", "WF", "WCF", "Task Parallel Library", "Osteoporose", "Kremost", "Dårlige TV-vaner", "Potetgull", "Hockeyfights", "Krokan-is", "Test-Driven Development", "Code Coverage", "DSL", "Pizza", "Food fight" }; var numberOfTags = _random.Next(1, tags.Count); var selectedTags = tags.OrderBy(x => _random.Next()) .Take(numberOfTags) .ToList(); grp.AddTags(selectedTags); }