X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=tests%2Fovsdb-table.at;h=26ff90e7a28ef790bda06ebb7bf060f5591cfa96;hb=003ce655b7116d18c86a74c50391e54990346931;hp=ebc5992d7e1c0f6976f3effd84004b298f7c84dd;hpb=02dd3123a0e312f1d33403e744af52dd6096f12d;p=sliver-openvswitch.git diff --git a/tests/ovsdb-table.at b/tests/ovsdb-table.at index ebc5992d7..26ff90e7a 100644 --- a/tests/ovsdb-table.at +++ b/tests/ovsdb-table.at @@ -1,31 +1,76 @@ AT_BANNER([OVSDB -- tables]) -OVSDB_CHECK_POSITIVE([table with one column], +OVSDB_CHECK_POSITIVE_CPY([non-root table with one column], [[parse-table mytable '{"columns": {"name": {"type": "string"}}}']], [[{"columns":{"name":{"type":"string"}}}]]) -OVSDB_CHECK_POSITIVE([immutable table with one column], +OVSDB_CHECK_POSITIVE_CPY([immutable table with one column], [[parse-table mytable \ '{"columns": {"name": {"type": "string"}}, "mutable": false}']], [[{"columns":{"name":{"type":"string"}},"mutable":false}]]) -OVSDB_CHECK_POSITIVE([table with comment], +OVSDB_CHECK_POSITIVE_CPY([root table with one column], [[parse-table mytable \ '{"columns": {"name": {"type": "string"}}, - "comment": "description of table"}']], - [[{"columns":{"name":{"type":"string"}},"comment":"description of table"}]]) + "isRoot": true}']], + [[{"columns":{"name":{"type":"string"}},"isRoot":true}]]) -OVSDB_CHECK_NEGATIVE([column names may not begin with _], +OVSDB_CHECK_POSITIVE_CPY([non-root table with default_is_root=true], + [[parse-table mytable '{"columns": {"name": {"type": "string"}}}' true]], + [[{"columns":{"name":{"type":"string"}},"isRoot":false}]]) + +OVSDB_CHECK_POSITIVE_CPY([root table with default_is_root=true], + [[parse-table mytable \ + '{"columns": {"name": {"type": "string"}}, + "isRoot": true}' true]], + [[{"columns":{"name":{"type":"string"}}}]]) + +OVSDB_CHECK_POSITIVE_CPY([table with maxRows of 2], + [[parse-table mytable '{"columns": {"name": {"type": "string"}}, + "maxRows": 2}']], + [[{"columns":{"name":{"type":"string"}},"maxRows":2}]]) + +OVSDB_CHECK_POSITIVE_CPY([table with index], + [[parse-table mytable '{"columns": {"a": {"type": "integer"}, + "b": {"type": "string"}}, + "indexes": [["b", "a"]]}']], + [[{"columns":{"a":{"type":"integer"},"b":{"type":"string"}},"indexes":[["b","a"]]}]]) + +OVSDB_CHECK_NEGATIVE_CPY([table with syntax error in index], + [[parse-table mytable '{"columns": {"a": {"type": "integer"}, + "b": {"type": "string"}}, + "indexes": [["b", "a"], [0]]}']], + [[array of distinct column names expected]]) + +OVSDB_CHECK_NEGATIVE_CPY([table with empty index], + [[parse-table mytable '{"columns": {"a": {"type": "integer"}, + "b": {"type": "string"}}, + "indexes": [[]]}']], + [[index must have at least one column]]) + +OVSDB_CHECK_NEGATIVE_CPY([table with index of ephemeral column], + [[parse-table mytable '{"columns": {"a": {"type": "integer", + "ephemeral": true}, + "b": {"type": "string"}}, + "indexes": [["b", "a"]]}']], + [[ephemeral columns (such as a) may not be indexed]]) + +OVSDB_CHECK_NEGATIVE_CPY([column names may not begin with _], [[parse-table mytable \ '{"columns": {"_column": {"type": "integer"}}}']], [[names beginning with "_" are reserved]], [table]) -OVSDB_CHECK_NEGATIVE([table must have at least one column (1)], +OVSDB_CHECK_NEGATIVE_CPY([table must have at least one column (1)], [[parse-table mytable '{}']], [[Parsing table schema for table mytable failed: Required 'columns' member is missing.]]) -OVSDB_CHECK_NEGATIVE([table must have at least one column (2)], +OVSDB_CHECK_NEGATIVE_CPY([table must have at least one column (2)], [[parse-table mytable '{"columns": {}}']], [[table must have at least one column]]) + +OVSDB_CHECK_NEGATIVE_CPY([table maxRows must be positive], + [[parse-table mytable '{"columns": {"name": {"type": "string"}}, + "maxRows": 0}']], + [[syntax "{"columns":{"name":{"type":"string"}},"maxRows":0}": syntax error: maxRows must be at least 1]])