ArgumentOrEnvironmentVariable overload without environment name prefix.
This commit is contained in:
parent
d37f5b2ed1
commit
9ca4840b42
2 changed files with 25 additions and 0 deletions
|
@ -105,6 +105,21 @@ namespace Cake.ArgumentHelpers.Tests
|
||||||
var expected = true;
|
var expected = true;
|
||||||
var actual = cakeContextMock.Object.ArgumentOrEnvironmentVariable(testKey, testKeyEnvironmentPrefix, true);
|
var actual = cakeContextMock.Object.ArgumentOrEnvironmentVariable(testKey, testKeyEnvironmentPrefix, true);
|
||||||
|
|
||||||
|
Assert.AreEqual(expected, actual, "Didn't find Environment variable without prefix.");
|
||||||
|
}
|
||||||
|
[Test]
|
||||||
|
public void NullArgumentAndTrueEnvironmentNoPrefixOverload_ReturnsTrue()
|
||||||
|
{
|
||||||
|
var testKey = "someVariable";
|
||||||
|
var testKeyEnvironmentPrefix = (string)null;
|
||||||
|
bool? testArgumentValue = null;
|
||||||
|
bool? testEnvironmentValue = true;
|
||||||
|
|
||||||
|
SetupVariables(testKey, testKeyEnvironmentPrefix, testArgumentValue, testEnvironmentValue);
|
||||||
|
|
||||||
|
var expected = true;
|
||||||
|
var actual = cakeContextMock.Object.ArgumentOrEnvironmentVariable(testKey, true);
|
||||||
|
|
||||||
Assert.AreEqual(expected, actual, "Didn't find Environment variable without prefix.");
|
Assert.AreEqual(expected, actual, "Didn't find Environment variable without prefix.");
|
||||||
}
|
}
|
||||||
[Test]
|
[Test]
|
||||||
|
|
|
@ -17,5 +17,15 @@ namespace Cake.ArgumentHelpers
|
||||||
{
|
{
|
||||||
return ArgumentAliases.Argument(context, name, EnvironmentAliases.EnvironmentVariable(context, (environmentNamePrefix ?? "") + name) ?? defaultValue.ToString()).Equals("true", StringComparison.OrdinalIgnoreCase);
|
return ArgumentAliases.Argument(context, name, EnvironmentAliases.EnvironmentVariable(context, (environmentNamePrefix ?? "") + name) ?? defaultValue.ToString()).Equals("true", StringComparison.OrdinalIgnoreCase);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Get a bool variable from various script inputs: first via Argument, then falling back on EnvironmentVariable, finally falling back on a default.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>Value found or default, first checked in command-line argument, then environment variable.</returns>
|
||||||
|
[CakeMethodAlias]
|
||||||
|
public static bool ArgumentOrEnvironmentVariable(this ICakeContext context, string name, bool defaultValue)
|
||||||
|
{
|
||||||
|
return context.ArgumentOrEnvironmentVariable(name, null, defaultValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue