aboutsummaryrefslogtreecommitdiff
path: root/tests/nar-access.sh
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2020-08-04 17:24:46 +0200
committerGitHub <noreply@github.com>2020-08-04 17:24:46 +0200
commit5b22a2c0d443ce1156f361af2dcb142d270daa6c (patch)
tree2e5e9e24faaaf036e3caa23e80327b21ab823054 /tests/nar-access.sh
parent4e7f1c7f11fb22d7954b2dacbe87c61548fab82d (diff)
parent6d9ccde20d783a660aca3cab0e6e5c20e8444641 (diff)
Merge pull request #3894 from obsidiansystems/json-test-order-agnostic
Make JSON equality tests agnostic to ordering
Diffstat (limited to 'tests/nar-access.sh')
-rw-r--r--tests/nar-access.sh24
1 files changed, 18 insertions, 6 deletions
diff --git a/tests/nar-access.sh b/tests/nar-access.sh
index 553d6ca89..88b997ca6 100644
--- a/tests/nar-access.sh
+++ b/tests/nar-access.sh
@@ -26,12 +26,24 @@ nix cat-store $storePath/foo/baz > baz.cat-nar
diff -u baz.cat-nar $storePath/foo/baz
# Test --json.
-[[ $(nix ls-nar --json $narFile /) = '{"type":"directory","entries":{"foo":{},"foo-x":{},"qux":{},"zyx":{}}}' ]]
-[[ $(nix ls-nar --json -R $narFile /foo) = '{"type":"directory","entries":{"bar":{"type":"regular","size":0,"narOffset":368},"baz":{"type":"regular","size":0,"narOffset":552},"data":{"type":"regular","size":58,"narOffset":736}}}' ]]
-[[ $(nix ls-nar --json -R $narFile /foo/bar) = '{"type":"regular","size":0,"narOffset":368}' ]]
-[[ $(nix ls-store --json $storePath) = '{"type":"directory","entries":{"foo":{},"foo-x":{},"qux":{},"zyx":{}}}' ]]
-[[ $(nix ls-store --json -R $storePath/foo) = '{"type":"directory","entries":{"bar":{"type":"regular","size":0},"baz":{"type":"regular","size":0},"data":{"type":"regular","size":58}}}' ]]
-[[ $(nix ls-store --json -R $storePath/foo/bar) = '{"type":"regular","size":0}' ]]
+diff -u \
+ <(nix ls-nar --json $narFile / | jq -S) \
+ <(echo '{"type":"directory","entries":{"foo":{},"foo-x":{},"qux":{},"zyx":{}}}' | jq -S)
+diff -u \
+ <(nix ls-nar --json -R $narFile /foo | jq -S) \
+ <(echo '{"type":"directory","entries":{"bar":{"type":"regular","size":0,"narOffset":368},"baz":{"type":"regular","size":0,"narOffset":552},"data":{"type":"regular","size":58,"narOffset":736}}}' | jq -S)
+diff -u \
+ <(nix ls-nar --json -R $narFile /foo/bar | jq -S) \
+ <(echo '{"type":"regular","size":0,"narOffset":368}' | jq -S)
+diff -u \
+ <(nix ls-store --json $storePath | jq -S) \
+ <(echo '{"type":"directory","entries":{"foo":{},"foo-x":{},"qux":{},"zyx":{}}}' | jq -S)
+diff -u \
+ <(nix ls-store --json -R $storePath/foo | jq -S) \
+ <(echo '{"type":"directory","entries":{"bar":{"type":"regular","size":0},"baz":{"type":"regular","size":0},"data":{"type":"regular","size":58}}}' | jq -S)
+diff -u \
+ <(nix ls-store --json -R $storePath/foo/bar| jq -S) \
+ <(echo '{"type":"regular","size":0}' | jq -S)
# Test missing files.
nix ls-store --json -R $storePath/xyzzy 2>&1 | grep 'does not exist in NAR'