public void Given_Default_When_Instantiated_Then_It_Should_Return_Value()
        {
            var instance = new FakeSchemaSink();

            instance.Name.Should().Be(nameof(FakeSchemaSink));
            instance.BaseLocation.Should().BeEmpty();
        }
        public void Given_Invalid_Type_When_WithHttpClient_Invoked_Then_It_Should_Throw_Exception()
        {
            var sink = new FakeSchemaSink();

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

            action.Should().Throw <ArgumentNullException>();
        }
        public void Given_Null_Location_When_WithBaseLocation_Invoked_Then_It_Should_Throw_Exception()
        {
            var instance = new FakeSchemaSink();

            Action action = () => instance.WithBaseLocation(null);

            action.Should().Throw <ArgumentNullException>();
        }
        public async Task Given_Location_And_Schema_When_SetSchemaAsync_Invoked_Then_It_Should_Return_Result(string location, string path, string schema)
        {
            var instance = new FakeSchemaSink(location);

            var result = await instance.SetSchemaAsync(schema, path).ConfigureAwait(false);

            result.Should().BeTrue();
        }
        public async Task Given_Location_When_GetSchemaAsync_Invoked_Then_It_Should_Return_Result(string location, string path)
        {
            var instance = new FakeSchemaSink(location);

            var result = await instance.GetSchemaAsync(path).ConfigureAwait(false);

            result.Should().BeNull();
        }
        public void Given_Location_When_WithBaseLocation_Invoked_Then_It_Should_Return_Result(string location)
        {
            var instance = new FakeSchemaSink();

            var result = instance.WithBaseLocation(location);

            result.BaseLocation.Should().Be(location);
        }
        public void Given_Name_When_Instantiated_Then_It_Should_Return_Name(string name)
        {
            var instance = new FakeSchemaSink()
            {
                Name = name
            };

            instance.Name.Should().Be(name);
        }
        public void Given_Location_When_Instantiated_Then_It_Should_Return_Value(string location)
        {
            var instance = new FakeSchemaSink(location);

            instance.BaseLocation.Should().Be(location);
        }