public void ShouldBeAbleToRunSingleParameterSpecificationUsingOneLine()
		{
			var content = new[]
			{
				"someflag.ParameterSpecification." + SpecificationWithParameter.ParameterName + "=true"
			};
			var mappings = new DefaultSpecificationMappings();
			mappings.AddMapping("parameterspecification", new SpecificationWithParameter());
			var fileProvider = new FileParser(new FileReaderStub(content), mappings);
			var toggleChecker = new ToggleConfiguration(fileProvider).Create();

			toggleChecker.IsEnabled("someflag")
				.Should().Be.True();
		}
		public void ShouldThrowIfParameterIsUsedAndMoreThanTwoDotsExist()
		{
			var content = new[]
			{
				"myfeature=ParameterSpecification",
				"myfeature.ParameterSpecification.three.four=true"
			};
			var mappings = new DefaultSpecificationMappings();
			mappings.AddMapping("parameterSpecification", new SpecificationWithParameter());
			var fileProvider = new FileParser(new FileReaderStub(content), mappings);

			Assert.Throws<IncorrectTextFileException>(() =>
				new ToggleConfiguration(fileProvider).Create()
				).ToString()
				.Should().Contain(string.Format(FileParser.MustHaveTwoDotsIfParameterUse, 2));
		}
Ejemplo n.º 3
0
		public void ShouldBeDisabled()
		{
			var content = new[]
			{
				"someflag=ParametersSpecification",
				"someflag.ParametersSpecification." + SpecificationWithMultipleParameters.ParameterName1 + "=true",
				"someflag.ParametersSpecification." + SpecificationWithMultipleParameters.ParameterName2 + "=false",
				"someflag.ParametersSpecification." + SpecificationWithMultipleParameters.ParameterName3 + "=true"
			};
			var mappings = new DefaultSpecificationMappings();
			mappings.AddMapping("parametersSpecification", new SpecificationWithMultipleParameters());
			var fileProvider = new FileParser(new FileReaderStub(content), mappings);
			var toggleChecker = new ToggleConfiguration(fileProvider).Create();
			toggleChecker.IsEnabled("someflag")
				.Should().Be.False();
		}  
		public void ShouldThrowIfParameterIsDeclaredMoreThanOnce()
		{
			var content = new[]
			{
				"someflag=ParameterSpecification",
				"someflag.ParameterSpecification." + SpecificationWithParameter.ParameterName + "=true",
				"someflag.ParameterSpecification." + SpecificationWithParameter.ParameterName + "=true"
			};
			var mappings = new DefaultSpecificationMappings();
			mappings.AddMapping("parameterSpecification", new SpecificationWithParameter());
			var fileProvider = new FileParser(new FileReaderStub(content), mappings);

			Assert.Throws<IncorrectTextFileException>(() =>
				new ToggleConfiguration(fileProvider).Create()
				).ToString()
				.Should().Contain(string.Format(FileParser.MustOnlyContainSameParameterOnce, SpecificationWithParameter.ParameterName, 3));
		}