]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
test/encoding/check-generated: test copy ctor, operator=
authorSage Weil <sage@inktank.com>
Fri, 6 Dec 2013 02:11:10 +0000 (18:11 -0800)
committerSage Weil <sage@inktank.com>
Fri, 6 Dec 2013 22:37:29 +0000 (14:37 -0800)
Signed-off-by: Sage Weil <sage@inktank.com>
src/test/encoding/check-generated.sh

index 486e2f927f6c8c5b513e23a6d0f63656b2971b02..0b246314d2ecaf4ef1ebd67f84c11e0ac36c60aa 100755 (executable)
@@ -6,6 +6,8 @@ set -e
 
 tmp1=`mktemp /tmp/typ-XXXXXXXXX`
 tmp2=`mktemp /tmp/typ-XXXXXXXXX`
+tmp3=`mktemp /tmp/typ-XXXXXXXXX`
+tmp4=`mktemp /tmp/typ-XXXXXXXXX`
 
 failed=0
 numtests=0
@@ -24,6 +26,9 @@ for type in `./ceph-dencoder list_types`; do
 
        ./ceph-dencoder type $type select_test $n dump_json > $tmp1
        ./ceph-dencoder type $type select_test $n encode decode dump_json > $tmp2
+       ./ceph-dencoder type $type select_test $n copy dump_json > $tmp3
+       ./ceph-dencoder type $type select_test $n copy_ctor dump_json > $tmp4
+
        if ! cmp $tmp1 $tmp2; then
            echo "**** $type test $n dump_json check failed ****"
            echo "   ceph-dencoder type $type select_test $n dump_json > $tmp1"
@@ -32,6 +37,22 @@ for type in `./ceph-dencoder list_types`; do
            failed=$(($failed + 1))
        fi
 
+       if ! cmp $tmp1 $tmp3; then
+           echo "**** $type test $n copy dump_json check failed ****"
+           echo "   ceph-dencoder type $type select_test $n dump_json > $tmp1"
+           echo "   ceph-dencoder type $type select_test $n copy dump_json > $tmp2"
+           echo "   diff $tmp1 $tmp2"
+           failed=$(($failed + 1))
+       fi
+
+       if ! cmp $tmp1 $tmp4; then
+           echo "**** $type test $n copy_ctor dump_json check failed ****"
+           echo "   ceph-dencoder type $type select_test $n dump_json > $tmp1"
+           echo "   ceph-dencoder type $type select_test $n copy_ctor dump_json > $tmp2"
+           echo "   diff $tmp1 $tmp2"
+           failed=$(($failed + 1))
+       fi
+
        ./ceph-dencoder type $type select_test $n encode export $tmp1
        ./ceph-dencoder type $type select_test $n encode decode encode export $tmp2
        if ! cmp $tmp1 $tmp2; then
@@ -41,11 +62,13 @@ for type in `./ceph-dencoder list_types`; do
            echo "   cmp $tmp1 $tmp2"
            failed=$(($failed + 1))
        fi
+
+
        numtests=$(($numtests + 3))
     done
 done
 
-rm -f $tmp1 $tmp2
+rm -f $tmp1 $tmp2 $tmp3 $tmp4
 
 if [ $failed -gt 0 ]; then
     echo "FAILED $failed / $numtests tests."