FEATURE #371 - Introduce list candidates command line functionality. [MV|FF]

This commit is contained in:
Marco Vermeulen
2015-10-07 13:35:35 +01:00
parent 2048afeb87
commit 06eda9ae8b
3 changed files with 30 additions and 2 deletions

View File

@@ -59,8 +59,19 @@ function __sdkman_offline_list {
}
function __sdkman_list {
CANDIDATE="$1"
__sdkman_check_candidate_present "${CANDIDATE}" || return 1
CANDIDATE="$1"
if [[ -z "$CANDIDATE" ]]; then
__sdkman_list_candidates
else
__sdkman_list_versions
fi
}
function __sdkman_list_candidates {
echo "$(curl -s "${SDKMAN_SERVICE}/candidates/list")"
}
function __sdkman_list_versions {
__sdkman_build_version_csv "${CANDIDATE}"
__sdkman_determine_current_version "${CANDIDATE}"

View File

@@ -0,0 +1,11 @@
Feature: List Candidates
Background:
Given the internet is reachable
And an initialised environment
Scenario: A List of Available Candidates can be viewed
Given the system is bootstrapped
And The candidate list is available
When I enter "sdk list"
Then I see "Candidate List"

View File

@@ -1,3 +1,5 @@
import cucumber.api.DataTable
import static cucumber.api.groovy.EN.And
import static sdkman.stubs.WebServiceStub.*
import static sdkman.utils.FilesystemUtils.readCurrentFromCandidateFolder
@@ -40,3 +42,7 @@ And(~/^the candidate "(.*?)" has a version list available$/) { String candidate
primeEndpoint(url, "Candidate: $candidate; Versions: $versions; Current: $current")
}
And(~/^The candidate list is available$/) { ->
primeEndpoint("/candidates/list", "Candidate List")
}