summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/ganeti/files/ganeti-2.13-disable-usersgroups-test.patch')
-rw-r--r--app-emulation/ganeti/files/ganeti-2.13-disable-usersgroups-test.patch68
1 files changed, 68 insertions, 0 deletions
diff --git a/app-emulation/ganeti/files/ganeti-2.13-disable-usersgroups-test.patch b/app-emulation/ganeti/files/ganeti-2.13-disable-usersgroups-test.patch
new file mode 100644
index 000000000000..6e81b515d830
--- /dev/null
+++ b/app-emulation/ganeti/files/ganeti-2.13-disable-usersgroups-test.patch
@@ -0,0 +1,68 @@
+diff --git a/test/hs/Test/Ganeti/Runtime.hs b/test/hs/Test/Ganeti/Runtime.hs
+index b15aa36..7aa75ca 100644
+--- a/test/hs/Test/Ganeti/Runtime.hs
++++ b/test/hs/Test/Ganeti/Runtime.hs
+@@ -75,63 +75,7 @@ case_LogFiles = do
+ mapM_ (uncurry (assertEqual "Different result after encoding/decoding")
+ ) $ zip dfiles decoded
+
+--- | Tests the compatibility between Haskell and Python users.
+-case_UsersGroups :: Assertion
+-case_UsersGroups = do
+- -- note: we don't have here a programatic way to list all users, so
+- -- we harcode some parts of the two (hs/py) lists
+- let daemons = [minBound..maxBound]::[GanetiDaemon]
+- users = map daemonUser daemons
+- groups = map daemonGroup $
+- map DaemonGroup daemons ++ map ExtraGroup [minBound..maxBound]
+- py_stdout <-
+- runPython "from ganeti import constants\n\
+- \from ganeti import serializer\n\
+- \import sys\n\
+- \users = [constants.MASTERD_USER,\n\
+- \ constants.NODED_USER,\n\
+- \ constants.RAPI_USER,\n\
+- \ constants.CONFD_USER,\n\
+- \ constants.WCONFD_USER,\n\
+- \ constants.KVMD_USER,\n\
+- \ constants.LUXID_USER,\n\
+- \ constants.METAD_USER,\n\
+- \ constants.MOND_USER,\n\
+- \ ]\n\
+- \groups = [constants.MASTERD_GROUP,\n\
+- \ constants.NODED_GROUP,\n\
+- \ constants.RAPI_GROUP,\n\
+- \ constants.CONFD_GROUP,\n\
+- \ constants.WCONFD_GROUP,\n\
+- \ constants.KVMD_GROUP,\n\
+- \ constants.LUXID_GROUP,\n\
+- \ constants.METAD_GROUP,\n\
+- \ constants.MOND_GROUP,\n\
+- \ constants.DAEMONS_GROUP,\n\
+- \ constants.ADMIN_GROUP,\n\
+- \ ]\n\
+- \encoded = (users, groups)\n\
+- \print serializer.Dump(encoded)" ""
+- >>= checkPythonResult
+- let deserialised = J.decode py_stdout::J.Result ([String], [String])
+- (py_users, py_groups) <-
+- case deserialised of
+- J.Ok ops -> return ops
+- J.Error msg ->
+- assertFailure ("Unable to decode users/groups: " ++ msg)
+- -- this already raised an expection, but we need it for proper
+- -- types
+- >> fail "Unable to decode users/groups"
+- assertEqual "Mismatch in number of returned users"
+- (length py_users) (length users)
+- assertEqual "Mismatch in number of returned users"
+- (length py_groups) (length groups)
+- mapM_ (uncurry (assertEqual "Different result for users")
+- ) $ zip users py_users
+- mapM_ (uncurry (assertEqual "Different result for groups")
+- ) $ zip groups py_groups
+
+ testSuite "Runtime"
+ [ 'case_LogFiles
+- , 'case_UsersGroups
+ ]