在 2012-11-01四的 17:57 +0800,Mike Qiu写道:
> Currently, qemu has changes it's error class, this makes this test fail
> To solve this problems, update the error class in the autotest.
>
> Signed-off-by: Mike Qiu <[email protected]>
> ---
> kvm/tests/qmp_basic.py | 30 +++++++++++++-----------------
> 1 files changed, 13 insertions(+), 17 deletions(-)
>
> diff --git a/kvm/tests/qmp_basic.py b/kvm/tests/qmp_basic.py
> index c303107..f4d66f0 100644
> --- a/kvm/tests/qmp_basic.py
> +++ b/kvm/tests/qmp_basic.py
> @@ -116,10 +116,6 @@ def run_qmp_basic(test, params, env):
> if classname and resp["error"]["class"] != classname:
> raise error.TestFail("got error class '%s' expected '%s'" %
> (resp["error"]["class"], classname))
> - check_key_is_dict(resp["error"], "data")
> - if datadict and resp["error"]["data"] != datadict:
> - raise error.TestFail("got data dict '%s' expected '%s'" %
> - (resp["error"]["data"], datadict))
Also one thing I forgot to comment is that the key "data" has been removed
in the new qemu version
So delete the code of check the 'data' key
>
> def test_version(version):
> @@ -190,7 +186,7 @@ def run_qmp_basic(test, params, env):
>
> for cmd in bad_json:
> resp = monitor.cmd_raw(cmd)
> - check_error_resp(resp, "JSONParsing")
> + check_error_resp(resp, "GenericError")
>
>
> def test_id_key(monitor):
> @@ -225,7 +221,7 @@ def run_qmp_basic(test, params, env):
> names must be detected.
> """
> resp = monitor.cmd_obj({ "execute": "eject", "foobar": True })
> - check_error_resp(resp, "QMPExtraInputObjectMember",
> + check_error_resp(resp, "GenericError",
> { "member": "foobar" })
>
>
> @@ -239,7 +235,7 @@ def run_qmp_basic(test, params, env):
> """
> for item in [ True, [], 1, "foo" ]:
> resp = monitor.cmd_obj({ "execute": "eject", "arguments": item })
> - check_error_resp(resp, "QMPBadInputObjectMember",
> + check_error_resp(resp, "GenericError",
> { "member": "arguments", "expected": "object" })
>
>
> @@ -249,7 +245,7 @@ def run_qmp_basic(test, params, env):
> """
> for item in [ False, 1, {}, [] ]:
> resp = monitor.cmd_obj({ "execute": item })
> - check_error_resp(resp, "QMPBadInputObjectMember",
> + check_error_resp(resp, "GenericError",
> { "member": "execute", "expected": "string" })
>
>
> @@ -270,7 +266,7 @@ def run_qmp_basic(test, params, env):
> """
> for cmd in [ "foo", [], True, 1 ]:
> resp = monitor.cmd_obj(cmd)
> - check_error_resp(resp, "QMPBadInputObject", {
> "expected":"object" })
> + check_error_resp(resp, "GenericError", { "expected":"object" })
>
>
> def test_good_input_obj(monitor):
> @@ -321,16 +317,16 @@ def run_qmp_basic(test, params, env):
> """
> # stop doesn't take arguments
> resp = monitor.cmd_qmp("stop", { "foo": 1 })
> - check_error_resp(resp, "InvalidParameter", { "name": "foo" })
> + check_error_resp(resp, "GenericError", { "name": "foo" })
>
> # required argument omitted
> resp = monitor.cmd_qmp("screendump")
> - check_error_resp(resp, "MissingParameter", { "name": "filename" })
> + check_error_resp(resp, "GenericError", { "name": "filename" })
>
> # 'bar' is not a valid argument
> resp = monitor.cmd_qmp("screendump", { "filename": "outfile",
> "bar": "bar" })
> - check_error_resp(resp, "InvalidParameter", { "name": "bar"})
> + check_error_resp(resp, "GenericError", { "name": "bar"})
>
> # test optional argument: 'force' is omitted, but it's optional, so
> # the handler has to be called. Test this happens by checking an
> @@ -341,26 +337,26 @@ def run_qmp_basic(test, params, env):
> # filename argument must be a json-string
> for arg in [ {}, [], 1, True ]:
> resp = monitor.cmd_qmp("screendump", { "filename": arg })
> - check_error_resp(resp, "InvalidParameterType",
> + check_error_resp(resp, "GenericError",
> { "name": "filename", "expected": "string" })
>
> # force argument must be a json-bool
> for arg in [ {}, [], 1, "foo" ]:
> resp = monitor.cmd_qmp("eject", { "force": arg, "device": "foo"
> })
> - check_error_resp(resp, "InvalidParameterType",
> + check_error_resp(resp, "GenericError",
> { "name": "force", "expected": "bool" })
>
> # val argument must be a json-int
> for arg in [ {}, [], True, "foo" ]:
> resp = monitor.cmd_qmp("memsave", { "val": arg, "filename":
> "foo",
> "size": 10 })
> - check_error_resp(resp, "InvalidParameterType",
> + check_error_resp(resp, "GenericError",
> { "name": "val", "expected": "int" })
>
> # value argument must be a json-number
> for arg in [ {}, [], True, "foo" ]:
> resp = monitor.cmd_qmp("migrate_set_speed", { "value": arg })
> - check_error_resp(resp, "InvalidParameterType",
> + check_error_resp(resp, "GenericError",
> { "name": "value", "expected": "number" })
>
> # qdev-type commands have their own argument checker, all QMP does
> @@ -369,7 +365,7 @@ def run_qmp_basic(test, params, env):
> # an error message from qdev
> resp = monitor.cmd_qmp("device_add", { "driver": "e1000",
> "foo": "bar" })
> - check_error_resp(resp, "PropertyNotFound",
> + check_error_resp(resp, "GenericError",
> {"device": "e1000", "property": "foo"})
>
>
_______________________________________________
Autotest-kernel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/autotest-kernel