public void Given_Invalid_Type_When_WithBlobClient_Invoked_Then_It_Should_Throw_Exception()
        {
            var sink = new FakeSchemaSink();

            Action action = () => SchemaSinkExtensions.WithBlobClient(sink, null);

            action.Should().Throw <ArgumentNullException>();
        }
        public void Given_Null_Parameters_When_WithBlobClient_Invoked_Then_It_Should_Throw_Exception()
        {
            Action action = () => SchemaSinkExtensions.WithBlobClient(null, null);

            action.Should().Throw <ArgumentNullException>();

            action = () => SchemaSinkExtensions.WithBlobClient(new Mock <ISchemaSink>().Object, null);
            action.Should().Throw <ArgumentNullException>();
        }
        public void Given_HttpClient_When_WithHttpClient_Invoked_Then_It_Should_Return_Result()
        {
            var sink       = new BlobStorageSchemaSink();
            var uri        = new Uri("https://localhost");
            var blobClient = new CloudBlobClient(uri);

            var result = SchemaSinkExtensions.WithBlobClient(sink, blobClient);

            result
            .Should().NotBeNull()
            .And.BeAssignableTo <ISchemaSink>();
        }