コード例 #1
0
            public void RequestsCorrectUrlParameterizedWithRepositoryId()
            {
                var endpoint = new Uri("repositories/1/notifications", UriKind.Relative);
                var connection = Substitute.For<IConnection>();
                var gitHubClient = new GitHubClient(connection);
                var client = new ObservableNotificationsClient(gitHubClient);

                var markAsReadRequest = new MarkAsReadRequest();

                client.MarkAsReadForRepository(1, markAsReadRequest);

                connection.Received().Put<object>(endpoint, markAsReadRequest);
            }
コード例 #2
0
            public async Task EnsuresNonNullArguments()
            {
                var client = new ObservableNotificationsClient(Substitute.For<IGitHubClient>());

                Assert.Throws<ArgumentNullException>(() => client.MarkAsReadForRepository(null, "name"));
                Assert.Throws<ArgumentNullException>(() => client.MarkAsReadForRepository("owner", null));
                Assert.Throws<ArgumentNullException>(() => client.MarkAsReadForRepository(null, "name", new MarkAsReadRequest()));
                Assert.Throws<ArgumentNullException>(() => client.MarkAsReadForRepository("owner", null, new MarkAsReadRequest()));
                Assert.Throws<ArgumentNullException>(() => client.MarkAsReadForRepository("owner", "name", null));

                Assert.Throws<ArgumentNullException>(() => client.MarkAsReadForRepository(1, null));

                Assert.Throws<ArgumentException>(() => client.MarkAsReadForRepository("", "name"));
                Assert.Throws<ArgumentException>(() => client.MarkAsReadForRepository("owner", ""));
                Assert.Throws<ArgumentException>(() => client.MarkAsReadForRepository("", "name", new MarkAsReadRequest()));
                Assert.Throws<ArgumentException>(() => client.MarkAsReadForRepository("owner", "", new MarkAsReadRequest()));
            }
コード例 #3
0
            public void RequestsCorrectUrl()
            {
                var endpoint = new Uri("repos/banana/split/notifications", UriKind.Relative);
                var connection = Substitute.For<IConnection>();
                var gitHubClient = new GitHubClient(connection);
                var client = new ObservableNotificationsClient(gitHubClient);

                client.MarkAsReadForRepository("banana", "split");

                connection.Received().Put(endpoint);
            }