Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix for #1104 (configure-integration-tests.ps1) #1118

Merged
merged 2 commits into from
Mar 8, 2016
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
110 changes: 60 additions & 50 deletions script/configure-integration-tests.ps1
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
# TODO: this should indicate whether a variable is required or optional

function SetVariable([string]$key, [string]$value)
{
Expand All @@ -8,59 +7,70 @@ function SetVariable([string]$key, [string]$value)

function AskYesNoQuestion([string]$question, [string]$key)
{
$answer = Read-Host -Prompt ($question + " Press Y to set this, otherwise we'll skip it")
if ($answer -eq "Y")
{
SetVariable $key "YES"
}
else
{
SetVariable $key $null
}

Write-Host

return ($answer -eq "Y")
$answer = Read-Host -Prompt ($question + " Press Y to set this, otherwise we'll skip it")
if ($answer -eq "Y")
{
SetVariable $key "YES"
}
else
{
SetVariable $key $null
}
Write-Host
return ($answer -eq "Y")
}

function VerifyEnvironmentVariable([string]$friendlyName, [string]$key, [bool]$optional = $false)
{
if ($optional -eq $true)
{
$label = "(optional)"
}
else
{
$label = "(required)"
}

$existing_value = [environment]::GetEnvironmentVariable($key,"User")
if ($existing_value -eq $null)
{
$value = Read-Host -Prompt "Set the $friendlyName to use for the integration tests $label"
SetVariable $key $value
}
else
{
Write-Host "$existing_value found as the configured $friendlyName"
$reset = Read-Host -Prompt "Want to change this? Press Y, otherwise we'll move on"
if ($reset -eq "Y")
{
$value = Read-Host -Prompt "Change the $friendlyName to use for the integration tests"
SetVariable $key $value
}

if ($optional -eq $true)
{
$clear = Read-Host -Prompt 'Want to remove this optional value, press Y'
if ($clear -eq "Y")
{
SetVariable $key $null
}
}
}

Write-Host
if ($optional -eq $true)
{
$label = "(optional)"
}
else
{
$label = "(required)"
}

$existing_value = [environment]::GetEnvironmentVariable($key,"User")
if ($existing_value -eq $null)
{
$value = Read-Host -Prompt "Set the $friendlyName to use for the integration tests $label"
SetVariable $key $value
}
else
{
Write-Host "$existing_value found as the configured $friendlyName"
if ($optional -eq $true)
{
$clear = Read-Host -Prompt 'Want to remove or change this optional value, press Y'
if ($clear -eq "Y")
{
$reset = Read-Host -Prompt "Press R to remove and Press C to change the value, otherwise we'll move on"
if ($reset -eq "C")
{
$value = Read-Host -Prompt "Change the $friendlyName to use for the integration tests"
SetVariable $key $value
}
elseif ($reset -eq "R")
{
SetVariable $key $null
}
}
}
else
{
$reset = Read-Host -Prompt "Press Y to change this value, otherwise we'll move on "
if ($reset -eq "Y")
{
$value = Read-Host -Prompt "Change the $friendlyName to use for the integration tests"
SetVariable $key $value
}
}
}

Write-Host
}

Write-Host
Expand Down