X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Fovsdb-idl.at;h=0be2a11e14ab1c0d2bc66d9c8f1125452d81b952;hb=91e310a5c24a8f5741f04900ea24154acc695c7b;hp=cf9f1ba37079516d12fe60d8c535643f7f8b546b;hpb=b12e3c41afaeb9faed1e3562954ec78fd595677d;p=openvswitch diff --git a/tests/ovsdb-idl.at b/tests/ovsdb-idl.at index cf9f1ba3..0be2a11e 100644 --- a/tests/ovsdb-idl.at +++ b/tests/ovsdb-idl.at @@ -17,16 +17,16 @@ 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], + AT_CHECK([ovsdb-tool create db $abs_srcdir/idltest.ovsschema], [0], [stdout], [ignore]) - AT_CHECK([ovsdb-server --detach --pidfile=$PWD/server-pid --listen=punix:socket --unixctl=$PWD/unixctl db], [0], [ignore], [ignore]) + AT_CHECK([ovsdb-server '-vPATTERN:console:ovsdb-server|%c|%m' --detach --pidfile=$PWD/pid --remote=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`])]) - AT_CHECK([test-ovsdb -vjsonrpc -t10 idl unix:socket $3], - [0], [stdout], [ignore], [kill `cat server-pid`]) + [AT_CHECK([ovsdb-client transact unix:socket $2], [0], [ignore], [ignore], [kill `cat pid`])]) + AT_CHECK([test-ovsdb '-vPATTERN:console:test-ovsdb|%c|%m' -vjsonrpc -t10 idl unix:socket $3], + [0], [stdout], [ignore], [kill `cat pid`]) AT_CHECK([sort stdout | perl $srcdir/uuidfilt.pl], [0], [$4], [], - [kill `cat server-pid`]) - kill `cat server-pid` + [kill `cat pid`]) + OVSDB_SERVER_SHUTDOWN AT_CLEANUP]) OVSDB_CHECK_IDL([simple idl, initially empty, no ops], @@ -137,24 +137,65 @@ OVSDB_CHECK_IDL([simple idl, initially populated], 003: done ]]) +OVSDB_CHECK_IDL([simple idl, writing via IDL], + [['[{"op": "insert", + "table": "simple", + "row": {"i": 1, + "r": 2.0, + "b": true, + "s": "mystring", + "u": ["uuid", "84f5c8f5-ac76-4dbc-a24f-8860eb407fc1"], + "ia": ["set", [1, 2, 3]], + "ra": ["set", [-0.5]], + "ba": ["set", [true, false]], + "sa": ["set", ["abc", "def"]], + "ua": ["set", [["uuid", "69443985-7806-45e2-b35f-574a04e720f9"], + ["uuid", "aad11ef0-816a-4b01-93e6-03b8b4256b98"]]]}}, + {"op": "insert", + "table": "simple", + "row": {}}]']], + [['set 0 b 1, set 1 r 3.5' \ + 'insert 2, delete 1']], + [[000: i=0 r=0 b=false s= u=<0> ia=[] ra=[] ba=[] sa=[] ua=[] uuid=<1> +000: i=1 r=2 b=true s=mystring u=<2> ia=[1 2 3] ra=[-0.5] ba=[false true] sa=[abc def] ua=[<3> <4>] uuid=<5> +001: commit, status=success +002: i=0 r=0 b=true s= u=<0> ia=[] ra=[] ba=[] sa=[] ua=[] uuid=<1> +002: i=1 r=3.5 b=true s=mystring u=<2> ia=[1 2 3] ra=[-0.5] ba=[false true] sa=[abc def] ua=[<3> <4>] uuid=<5> +003: commit, status=success +004: i=0 r=0 b=true s= u=<0> ia=[] ra=[] ba=[] sa=[] ua=[] uuid=<1> +004: i=2 r=0 b=false s= u=<0> ia=[] ra=[] ba=[] sa=[] ua=[] uuid=<6> +005: done +]]) + +OVSDB_CHECK_IDL([simple idl, increment operation], + [['[{"op": "insert", + "table": "simple", + "row": {}}]']], + [['set 0 r 2.0, increment simple i']], + [[000: i=0 r=0 b=false s= u=<0> ia=[] ra=[] ba=[] sa=[] ua=[] uuid=<1> +001: commit, status=success, increment=1 +002: i=1 r=2 b=false s= u=<0> ia=[] ra=[] ba=[] sa=[] ua=[] uuid=<1> +003: done +]]) + OVSDB_CHECK_IDL([self-linking idl, consistent ops], [], [['[{"op": "insert", "table": "link1", "row": {"i": 0, "k": ["named-uuid", "self"]}, "uuid-name": "self"}]' \ - '[{"op": "insert", + '[{"op": "declare", + "uuid-name": "row1"}, + {"op": "declare", + "uuid-name": "row2"}, + {"op": "insert", "table": "link1", - "row": {"i": 1}, + "row": {"i": 1, "k": ["named-uuid", "row2"]}, "uuid-name": "row1"}, {"op": "insert", "table": "link1", "row": {"i": 2, "k": ["named-uuid", "row1"]}, - "uuid-name": "row2"}, - {"op": "update", - "table": "link1", - "where": [["i", "==", 1]], - "row": {"k": ["named-uuid", "row2"]}}]' \ + "uuid-name": "row2"}]' \ '[{"op": "update", "table": "link1", "where": [["i", "==", 1]], @@ -166,7 +207,7 @@ OVSDB_CHECK_IDL([self-linking idl, consistent ops], [[000: empty 001: {"error":null,"result":[{"uuid":["uuid","<0>"]}]} 002: i=0 k=0 ka=[] l2= uuid=<0> -003: {"error":null,"result":[{"uuid":["uuid","<1>"]},{"uuid":["uuid","<2>"]},{"count":1}]} +003: {"error":null,"result":[{"uuid":["uuid","<1>"]},{"uuid":["uuid","<2>"]},{"uuid":["uuid","<1>"]},{"uuid":["uuid","<2>"]}]} 004: i=0 k=0 ka=[] l2= uuid=<0> 004: i=1 k=2 ka=[] l2= uuid=<1> 004: i=2 k=1 ka=[] l2= uuid=<2> @@ -263,7 +304,6 @@ OVSDB_CHECK_IDL([self-linking idl, sets], 007: done ]]) - OVSDB_CHECK_IDL([external-linking idl, consistent ops], [], [['[{"op": "insert",