initial code repo
[stor4nfv.git] / src / ceph / src / test / encoding / identity.sh
diff --git a/src/ceph/src/test/encoding/identity.sh b/src/ceph/src/test/encoding/identity.sh
new file mode 100755 (executable)
index 0000000..67c803c
--- /dev/null
@@ -0,0 +1,32 @@
+#!/bin/sh -e
+
+dir=$1
+
+set -e
+
+tmp1=`mktemp /tmp/typ-XXXXXXXXX`
+tmp2=`mktemp /tmp/typ-XXXXXXXXX`
+
+for type in `ls $dir`
+do
+    if ./ceph-dencoder type $type 2>/dev/null; then
+        echo "type $type"
+       for o in `ls $dir/$type`; do
+           f="$dir/$type/$o"
+           echo "\t$f"
+
+            ./ceph-dencoder type $type import $f decode dump_json > $tmp1
+            ./ceph-dencoder type $type import $f decode encode decode dump_json > $tmp2
+            cmp $tmp1 $tmp2 || exit 1
+
+            ./ceph-dencoder type $type import $f decode encode export $tmp1
+            cmp $tmp1 $f || exit 1
+       done
+    else
+        echo "skip $type"
+    fi
+done
+
+rm -f $tmp1 $tmp2
+
+echo OK