testsuite: Look for .ovsschema files in source dir as well as build dir.
authorBen Pfaff <blp@nicira.com>
Thu, 17 Dec 2009 23:49:48 +0000 (15:49 -0800)
committerBen Pfaff <blp@nicira.com>
Thu, 17 Dec 2009 23:50:01 +0000 (15:50 -0800)
When a distribution is built with "make dist", the .ovsschema files are
included as part of it, so that the builder does not have to have Python
installed.  However in that case the distributed .ovsschema files are in
the source dir instead of the build dir.  The testsuite always expected
them in the latter directory.  This commit makes it look for them in both
places.

tests/ovs-vsctl.at
tests/ovsdb-idl.at

index b1e7948498bd21eea1e4718676eb7088ae55102e..6e968f060d92275b07d5d3ef42d170a59ebaf2fc 100644 (file)
@@ -4,7 +4,15 @@ dnl Creates an empty database in the current directory and then starts
 dnl an ovsdb-server on it for ovs-vsctl to connect to.
 m4_define([OVS_VSCTL_SETUP],
   [OVS_CHECK_LCOV(
-     [ovsdb-tool create db $abs_builddir/../vswitchd/vswitch-idl.ovsschema], 
+     [SCHEMA=$abs_top_builddir/vswitchd/vswitch-idl.ovsschema
+      if test ! -e $SCHEMA; then
+        SCHEMA=$abs_top_srcdir/vswitchd/vswitch-idl.ovsschema
+          if test ! -e $SCHEMA; then
+            echo 'Failed to find vswitch-idl.ovsschema'
+            exit 1
+          fi
+      fi
+      ovsdb-tool create db $SCHEMA],
      [0], [stdout], [ignore])
    OVS_CHECK_LCOV(
      [[ovsdb-tool transact db \
index 973ccac88b00f1ae161087b9ef524a7cf01e7836..b1c78e00505b9aeecec5aa73cf967a6bffffcf05 100644 (file)
@@ -17,8 +17,17 @@ AT_BANNER([OVSDB -- interface description language (IDL)])
 m4_define([OVSDB_CHECK_IDL], 
   [AT_SETUP([$1])
    AT_KEYWORDS([ovsdb server idl positive $5])
-   OVS_CHECK_LCOV([ovsdb-tool create db $abs_builddir/idltest.ovsschema], 
-                  [0], [stdout], [ignore])
+   OVS_CHECK_LCOV(
+     [SCHEMA=$abs_builddir/idltest.ovsschema
+      if test ! -e $SCHEMA; then
+        SCHEMA=$abs_srcdir/idltest.ovsschema
+          if test ! -e $SCHEMA; then
+            echo 'Failed to find idltest.ovsschema'
+            exit 1
+          fi
+      fi
+      ovsdb-tool create db $SCHEMA],
+     [0], [stdout], [ignore])
    AT_CHECK([ovsdb-server '-vPATTERN:console:ovsdb-server|%c|%m' --detach --pidfile=$PWD/server-pid --listen=punix:socket --unixctl=$PWD/unixctl db], [0], [ignore], [ignore])
    m4_if([$2], [], [],
      [OVS_CHECK_LCOV([ovsdb-client transact unix:socket $2], [0], [ignore], [ignore], [kill `cat server-pid`])])