예제 #1
0
        public MainViewModel()
        {
            NotificationsViewModel = new NotificationsViewModel();
            NewsViewModel = new NewsViewModel();
            ReposViewModel = new UserRepositoriesViewModel();
            IssuesViewModel = new UserIssuesViewModel();

            this.Refresh();

            GetCurrentUser();
        }
예제 #2
0
        public async void NewsVMShouldGetAllReceivedAndPerformedEvents()
        {
            GitHubClientMock.Setup(m => m.Activity.Events.GetUserPerformed(It.IsAny<string>())).Returns(() => Task.FromResult(new List<Activity> { new Activity() } as IReadOnlyList<Activity>));
            GitHubClientMock.Setup(m => m.Activity.Events.GetUserReceived(It.IsAny<string>())).Returns(() => Task.FromResult(new List<Activity> { new Activity() } as IReadOnlyList<Activity>));

            var currentUser = new Mock<User>();
            currentUser.SetupProperty(u => u.Name, "Bob");
            GitHubClientMock.Setup(m => m.User.Current()).Returns(() => Task.FromResult(currentUser.Object));

            var vm = new NewsViewModel();
            await vm.Refresh();
            GitHubClientMock.Verify(m => m.Activity.Events.GetUserPerformed("Bob"), Times.Once());
            GitHubClientMock.Verify(m => m.Activity.Events.GetUserReceived("Bob"), Times.Once());
            Assert.AreEqual(2, vm.NewsItems.Count());
        }
예제 #3
0
        public async void NewsVMShouldGetAllReceivedAndPerformedEvents()
        {
            GitHubClientMock.Setup(m => m.Activity.Events.GetAllUserPerformed(It.IsAny<string>())).Returns(() => Task.FromResult(new List<Activity> { new Activity() } as IReadOnlyList<Activity>));
            GitHubClientMock.Setup(m => m.Activity.Events.GetAllUserReceived(It.IsAny<string>())).Returns(() => Task.FromResult(new List<Activity> { new Activity() } as IReadOnlyList<Activity>));

            var currentUser = new User(null, null, null, 0, null, DateTimeOffset.UtcNow, 0, null, 0, 0, null, null, 0, 0,
                null, "New Guy", null, 0, null, 0, 0, 0, null, false);
            GitHubClientMock.Setup(m => m.User.Current()).Returns(() => Task.FromResult(currentUser));

            var vm = new NewsViewModel();
            await vm.Refresh();
            GitHubClientMock.Verify(m => m.Activity.Events.GetAllUserPerformed("New Guy"), Times.Once());
            GitHubClientMock.Verify(m => m.Activity.Events.GetAllUserReceived("New Guy"), Times.Once());
            Assert.AreEqual(2, vm.NewsItems.Count());
        }