コード例 #1
0
            public async Task ReturnsRawContent()
            {
                var result = new byte[] { 1, 2, 3 };

                var connection = Substitute.For <IApiConnection>();

                connection.GetRaw(Args.Uri, default).Returns(result);
                var contentsClient = new RepositoryContentsClient(connection);

                var rawContent = await contentsClient.GetRawContentByRef("fake", "repo", "path/to/file.txt", "reference");

                connection.Received().GetRaw(Arg.Is <Uri>(u => u.ToString() == "repos/fake/repo/contents/path/to/file.txt?ref=reference"), null);
                Assert.Same(result, rawContent);
            }
コード例 #2
0
            public async Task EnsuresNonNullArguments()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new RepositoryContentsClient(connection);

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetRawContentByRef(null, "name", "path", "reference"));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetRawContentByRef("owner", null, "path", "reference"));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetRawContentByRef("owner", "name", null, "reference"));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetRawContentByRef("owner", "name", "path", null));

                await Assert.ThrowsAsync <ArgumentException>(() => client.GetRawContentByRef("", "name", "path", "reference"));

                await Assert.ThrowsAsync <ArgumentException>(() => client.GetRawContentByRef("owner", "", "path", "reference"));

                await Assert.ThrowsAsync <ArgumentException>(() => client.GetRawContentByRef("owner", "name", "", "reference"));

                await Assert.ThrowsAsync <ArgumentException>(() => client.GetRawContentByRef("owner", "name", "path", ""));
            }