public void should_return_empty_variables_when_config_is_missing()
        {
            // given
            var provider = new SharedVariablesProvider(_configLocatorMock.Object);

            _configLocatorMock
            .Setup(x => x.ResolveConfigFile("shared-variables.json"))
            .Throws <FileNotFoundException>();

            // when
            IEnumerable <IVariable> variables = provider.ListSharedVariables();

            // then
            Assert.That(variables, Is.Empty);
        }
        public void should_read_shared_variables_as_expected()
        {
            // given
            var provider = new SharedVariablesProvider(_configLocatorMock.Object);

            // when
            IEnumerable <IVariable> variables = provider.ListSharedVariables();

            // then
            IVariable variable1 = variables.FirstOrDefault(x => x.Name == "test-name");

            Assert.That(variable1, Is.Not.Null);
            Assert.That(variable1.Value, Is.EqualTo("test-value"));
            Assert.That(variable1.Environment.Name, Is.EqualTo("Development"));

            IVariable variable2 = variables.FirstOrDefault(x => x.Name == "some-ther-name");

            Assert.That(variable2, Is.Not.Null);
            Assert.That(variable2.Value, Is.EqualTo("something else"));
            Assert.That(variable2.Environment.Name, Is.EqualTo("UAT"));
        }