internal void ProvideAFluidInterface()
        {
            const string Town = "Karlsruhe,de";
            const OpenWeatherUrlProvider.QueryMode     Mode     = OpenWeatherUrlProvider.QueryMode.Json;
            const OpenWeatherUrlProvider.QueryUnit     Unit     = OpenWeatherUrlProvider.QueryUnit.Metric;
            const OpenWeatherUrlProvider.QueryLanguage Language = OpenWeatherUrlProvider.QueryLanguage.German;

            IUrlProvider ProviderUnderTest = CreateDefaultUrlProvider();

            ProviderUnderTest.SetLocation(Town).SetMode(Mode).SetUnit(Unit).SetLanguage(Language);

            Assert.True(true);
        }
        [InlineData("units=", false, OpenWeatherUrlProvider.QueryUnit.Kelvin)]  // Does not contain units and thus uses kelvin -> how to cover in one test case
        internal void SetUnitCorrectly(string SearchString, bool ShouldContain, OpenWeatherUrlProvider.QueryUnit UnitToSet)
        {
            IUrlProvider ProviderUnderTest = CreateDefaultUrlProvider();

            ProviderUnderTest.SetUnit(UnitToSet);

            if (ShouldContain)
            {
                Assert.Contains(SearchString, ProviderUnderTest.GetUriAsString());
            }
            else
            {
                Assert.DoesNotContain(SearchString, ProviderUnderTest.GetUriAsString());
            }
        }