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 b1e7948..6e968f0 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 973ccac..b1c78e0 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`])])