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"));
            }
        }
Esempio n. 4
0
 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;
 }
Esempio n. 5
0
 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);
 }