From 719a98bb8a1add72053a2153d49e1d4211bc974b Mon Sep 17 00:00:00 2001 From: felmer <felmer> Date: Thu, 24 Mar 2016 13:58:58 +0000 Subject: [PATCH] SSDM-3395: make CreateVocabularyTermTest more robust SVN: 36010 --- .../asapi/v3/CreateVocabularyTermTest.java | 42 +++++++++++-------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/CreateVocabularyTermTest.java b/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/CreateVocabularyTermTest.java index f753c1ceee5..243f8b3ee51 100644 --- a/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/CreateVocabularyTermTest.java +++ b/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/CreateVocabularyTermTest.java @@ -251,13 +251,14 @@ public class CreateVocabularyTermTest extends AbstractTest creation2.setCode("NEW2"); creation2.setPreviousTermId(new VocabularyTermPermId("NEW1", "ORGANISM")); - List<VocabularyTerm> termsBefore = listTerms(creation1.getVocabularyId()); - assertTerms(termsBefore, "RAT", "DOG", "HUMAN", "GORILLA", "FLY"); + List<String> terms = extractCodes(listTerms(creation1.getVocabularyId())); createTerms(TEST_USER, PASSWORD, creation1, creation2); List<VocabularyTerm> termsAfter = listTerms(creation1.getVocabularyId()); - assertTerms(termsAfter, "RAT", "DOG", "HUMAN", "NEW1", "NEW2", "GORILLA", "FLY"); + terms.add(terms.indexOf("HUMAN") + 1, creation1.getCode()); + terms.add(terms.indexOf("NEW1") + 1, creation2.getCode()); + assertTerms(termsAfter, terms); } @Test @@ -280,13 +281,16 @@ public class CreateVocabularyTermTest extends AbstractTest creation4.setCode("NEW4"); creation4.setPreviousTermId(null); - List<VocabularyTerm> termsBefore = listTerms(creation1.getVocabularyId()); - assertTerms(termsBefore, "RAT", "DOG", "HUMAN", "GORILLA", "FLY"); + List<String> terms = extractCodes(listTerms(creation1.getVocabularyId())); createTerms(TEST_USER, PASSWORD, creation1, creation2, creation3, creation4); List<VocabularyTerm> termsAfter = listTerms(creation1.getVocabularyId()); - assertTerms(termsAfter, "RAT", "DOG", "HUMAN", "NEW1", "GORILLA", "NEW2", "NEW3", "FLY", "NEW4"); + terms.add(terms.indexOf("HUMAN") + 1, creation1.getCode()); + terms.add(terms.indexOf("GORILLA") + 1, creation2.getCode()); + terms.add(terms.indexOf("NEW2") + 1, creation3.getCode()); + terms.add(creation4.getCode()); + assertTerms(termsAfter, terms); } private VocabularyTermCreation termCreation() @@ -366,26 +370,26 @@ public class CreateVocabularyTermTest extends AbstractTest private void createWithPreviousTermNull(VocabularyTermCreation creation) { - List<VocabularyTerm> termsBefore = listTerms(creation.getVocabularyId()); - assertTerms(termsBefore, "RAT", "DOG", "HUMAN", "GORILLA", "FLY"); + List<String> terms = extractCodes(listTerms(creation.getVocabularyId())); creation.setPreviousTermId(null); createTerms(TEST_USER, PASSWORD, creation); List<VocabularyTerm> termsAfter = listTerms(creation.getVocabularyId()); - assertTerms(termsAfter, "RAT", "DOG", "HUMAN", "GORILLA", "FLY", creation.getCode()); + terms.add(creation.getCode()); + assertTerms(termsAfter, terms); } private void createWithPreviousTermNotNull(VocabularyTermCreation creation) { - List<VocabularyTerm> termsBefore = listTerms(creation.getVocabularyId()); - assertTerms(termsBefore, "RAT", "DOG", "HUMAN", "GORILLA", "FLY"); + List<String> terms = extractCodes(listTerms(creation.getVocabularyId())); creation.setPreviousTermId(new VocabularyTermPermId("HUMAN", "ORGANISM")); createTerms(TEST_USER, PASSWORD, creation); List<VocabularyTerm> termsAfter = listTerms(creation.getVocabularyId()); - assertTerms(termsAfter, "RAT", "DOG", "HUMAN", creation.getCode(), "GORILLA", "FLY"); + terms.add(terms.indexOf("HUMAN") + 1, creation.getCode()); + assertTerms(termsAfter, terms); } private List<VocabularyTerm> listTerms(IVocabularyId vocabularyId) @@ -405,17 +409,21 @@ public class CreateVocabularyTermTest extends AbstractTest return results.getObjects(); } - private void assertTerms(List<VocabularyTerm> actualTerms, String... expectedCodes) + private void assertTerms(List<VocabularyTerm> actualTerms, List<String> expectedCodes) { - List<String> actualCodes = new ArrayList<String>(); + List<String> actualCodes = extractCodes(actualTerms); + assertEquals(actualCodes, expectedCodes, + "Actual codes: " + actualCodes + ", Expected codes: " + expectedCodes); + } + private List<String> extractCodes(List<VocabularyTerm> actualTerms) + { + List<String> actualCodes = new ArrayList<String>(); for (VocabularyTerm actualTerm : actualTerms) { actualCodes.add(actualTerm.getCode()); } - - assertEquals(actualCodes, Arrays.asList(expectedCodes), - "Actual codes: " + actualCodes + ", Expected codes: " + Arrays.asList(expectedCodes)); + return actualCodes; } } -- GitLab