Handle random PYTHONHASHSEED values.

Voluptions does a depth first in order traversal of the data structures
it is checking and fails fast. This means it will die when it hits the
first error and return only that error. The test_layouts test is
checking that different bad layout files fail in unique ways. This check
breaks when the python hashseed is random resulting in different depth
first traversals which can result in returning the same error twice if
bad layout files have common errors.

Fix this by trimming down the errors in each layout file to a single
error this way the order of the errors hit never matters.

Fix a string typo in test_layouts while we are in there.

Change-Id: Ie7587ebac4d22063a6819c68011f7fb67a49fcc0
This commit is contained in:
Clark Boylan 2014-08-21 14:40:19 -07:00
parent 2de0c2a37a
commit 2532dd65c8
3 changed files with 1 additions and 6 deletions

View File

@ -1,4 +1,2 @@
pipelines:
projects:
- name: foo

View File

@ -1,8 +1,5 @@
# Template refers to an unexisting pipeline
pipelines:
# We have no pipelines at all
project-templates:
- name: template-generic
unexisting-pipeline: # pipeline does not exist

View File

@ -57,7 +57,7 @@ class TestLayoutValidator(testtools.TestCase):
error = str(e)
print ' ', error
if error in errors:
raise Exception("Error has already beed tested: %s" %
raise Exception("Error has already been tested: %s" %
error)
else:
errors.append(error)