diff options
Diffstat (limited to 'src/VBox/ValidationKit/common/constants')
-rw-r--r-- | src/VBox/ValidationKit/common/constants/Makefile.kup | 0 | ||||
-rwxr-xr-x | src/VBox/ValidationKit/common/constants/__init__.py | 47 | ||||
-rw-r--r-- | src/VBox/ValidationKit/common/constants/result.py | 51 | ||||
-rw-r--r-- | src/VBox/ValidationKit/common/constants/rtexitcode.py | 61 | ||||
-rw-r--r-- | src/VBox/ValidationKit/common/constants/tbreq.py | 131 | ||||
-rw-r--r-- | src/VBox/ValidationKit/common/constants/tbresp.py | 93 | ||||
-rw-r--r-- | src/VBox/ValidationKit/common/constants/valueunit.py | 168 |
7 files changed, 551 insertions, 0 deletions
diff --git a/src/VBox/ValidationKit/common/constants/Makefile.kup b/src/VBox/ValidationKit/common/constants/Makefile.kup new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/VBox/ValidationKit/common/constants/Makefile.kup diff --git a/src/VBox/ValidationKit/common/constants/__init__.py b/src/VBox/ValidationKit/common/constants/__init__.py new file mode 100755 index 00000000..dc2b7c10 --- /dev/null +++ b/src/VBox/ValidationKit/common/constants/__init__.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- +# $Id: __init__.py $ + +""" +Constants. +""" + +__copyright__ = \ +""" +Copyright (C) 2012-2022 Oracle and/or its affiliates. + +This file is part of VirtualBox base platform packages, as +available from https://www.virtualbox.org. + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation, in version 3 of the +License. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, see <https://www.gnu.org/licenses>. + +The contents of this file may alternatively be used under the terms +of the Common Development and Distribution License Version 1.0 +(CDDL), a copy of it is provided in the "COPYING.CDDL" file included +in the VirtualBox distribution, in which case the provisions of the +CDDL are applicable instead of those of the GPL. + +You may elect to license modified versions of this file under the +terms and conditions of either the GPL or the CDDL or both. + +SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0 +""" +__version__ = "$Revision: 153224 $" + + +from common.constants import tbreq; +from common.constants import tbresp; +from common.constants import result; +from common.constants import rtexitcode; +from common.constants import valueunit; + diff --git a/src/VBox/ValidationKit/common/constants/result.py b/src/VBox/ValidationKit/common/constants/result.py new file mode 100644 index 00000000..59f9faec --- /dev/null +++ b/src/VBox/ValidationKit/common/constants/result.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- +# $Id: result.py $ + +""" +Test statuses. +""" + +__copyright__ = \ +""" +Copyright (C) 2012-2022 Oracle and/or its affiliates. + +This file is part of VirtualBox base platform packages, as +available from https://www.virtualbox.org. + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation, in version 3 of the +License. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, see <https://www.gnu.org/licenses>. + +The contents of this file may alternatively be used under the terms +of the Common Development and Distribution License Version 1.0 +(CDDL), a copy of it is provided in the "COPYING.CDDL" file included +in the VirtualBox distribution, in which case the provisions of the +CDDL are applicable instead of those of the GPL. + +You may elect to license modified versions of this file under the +terms and conditions of either the GPL or the CDDL or both. + +SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0 +""" +__version__ = "$Revision: 153224 $" + + +PASSED = 'PASSED'; +SKIPPED = 'SKIPPED'; +ABORTED = 'ABORTED'; +BAD_TESTBOX = 'BAD_TESTBOX'; +FAILED = 'FAILED'; +TIMED_OUT = 'TIMED_OUT'; +REBOOTED = 'REBOOTED'; + +## List of valid result valies. +g_kasValidResults = [ PASSED, SKIPPED, ABORTED, BAD_TESTBOX, FAILED, TIMED_OUT, REBOOTED, ]; diff --git a/src/VBox/ValidationKit/common/constants/rtexitcode.py b/src/VBox/ValidationKit/common/constants/rtexitcode.py new file mode 100644 index 00000000..f10a7e3d --- /dev/null +++ b/src/VBox/ValidationKit/common/constants/rtexitcode.py @@ -0,0 +1,61 @@ +# -*- coding: utf-8 -*- +# $Id: rtexitcode.py $ + +""" +RTEXITCODE from iprt/types.h. +""" + +__copyright__ = \ +""" +Copyright (C) 2012-2022 Oracle and/or its affiliates. + +This file is part of VirtualBox base platform packages, as +available from https://www.virtualbox.org. + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation, in version 3 of the +License. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, see <https://www.gnu.org/licenses>. + +The contents of this file may alternatively be used under the terms +of the Common Development and Distribution License Version 1.0 +(CDDL), a copy of it is provided in the "COPYING.CDDL" file included +in the VirtualBox distribution, in which case the provisions of the +CDDL are applicable instead of those of the GPL. + +You may elect to license modified versions of this file under the +terms and conditions of either the GPL or the CDDL or both. + +SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0 +""" +__version__ = "$Revision: 153224 $" + + +## Success. +RTEXITCODE_SUCCESS = 0; +SUCCESS = RTEXITCODE_SUCCESS; +## General failure. +RTEXITCODE_FAILURE = 1; +FAILURE = RTEXITCODE_FAILURE; +## Invalid arguments. +RTEXITCODE_SYNTAX = 2; +SYNTAX = RTEXITCODE_SYNTAX; +## Initialization failure. +RTEXITCODE_INIT = 3; +INIT = RTEXITCODE_INIT; +## Test skipped. +RTEXITCODE_SKIPPED = 4; +SKIPPED = RTEXITCODE_SKIPPED; +## Bad-testbox. +RTEXITCODE_BAD_TESTBOX = 32; +## Bad-testbox. +BAD_TESTBOX = RTEXITCODE_BAD_TESTBOX; + diff --git a/src/VBox/ValidationKit/common/constants/tbreq.py b/src/VBox/ValidationKit/common/constants/tbreq.py new file mode 100644 index 00000000..c3c066f3 --- /dev/null +++ b/src/VBox/ValidationKit/common/constants/tbreq.py @@ -0,0 +1,131 @@ +# -*- coding: utf-8 -*- +# $Id: tbreq.py $ + +""" +Test Manager Requests from the TestBox Script. +""" + +__copyright__ = \ +""" +Copyright (C) 2012-2022 Oracle and/or its affiliates. + +This file is part of VirtualBox base platform packages, as +available from https://www.virtualbox.org. + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation, in version 3 of the +License. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, see <https://www.gnu.org/licenses>. + +The contents of this file may alternatively be used under the terms +of the Common Development and Distribution License Version 1.0 +(CDDL), a copy of it is provided in the "COPYING.CDDL" file included +in the VirtualBox distribution, in which case the provisions of the +CDDL are applicable instead of those of the GPL. + +You may elect to license modified versions of this file under the +terms and conditions of either the GPL or the CDDL or both. + +SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0 +""" +__version__ = "$Revision: 153224 $" + + +## @name Test Manager actions +# @{ +## TestBox sign-on. +SIGNON = 'SIGNON' +## TestBox request for a command while busy (EXEC). +REQUEST_COMMAND_BUSY = 'REQUEST_COMMAND_BUSY' +## TestBox request for a command while idling. +REQUEST_COMMAND_IDLE = 'REQUEST_COMMAND_IDLE' +## TestBox ACKs a command. +COMMAND_ACK = 'COMMAND_ACK' +## TestBox NACKs a command. +COMMAND_NACK = 'COMMAND_NACK' +## TestBox NACKs an unsupported command. +COMMAND_NOTSUP = 'COMMAND_NOTSUP' +## TestBox adds to the main log. +LOG_MAIN = 'LOG_MAIN' +## TestBox uploads a file to the current test result. +UPLOAD = 'UPLOAD' +## TestBox reports completion of an EXEC command. +EXEC_COMPLETED = 'EXEC_COMPLETED' +## Push more "XML" results to the server. +XML_RESULTS = 'XML_RESULTS'; +## @} + + +## @name Parameters for all actions. +# @{ +ALL_PARAM_ACTION = 'ACTION' +ALL_PARAM_TESTBOX_ID = 'TESTBOX_ID' ##< Not supplied by SIGNON. +ALL_PARAM_TESTBOX_UUID = 'TESTBOX_UUID' +## @} + +## @name SIGNON parameters. +# @{ +SIGNON_PARAM_OS = 'OS'; +SIGNON_PARAM_OS_VERSION = 'OS_VERSION'; +SIGNON_PARAM_CPU_VENDOR = 'CPU_VENDOR'; +SIGNON_PARAM_CPU_ARCH = 'CPU_ARCH'; +SIGNON_PARAM_CPU_NAME = 'CPU_NAME'; +SIGNON_PARAM_CPU_REVISION = 'CPU_REVISION'; +SIGNON_PARAM_CPU_COUNT = 'CPU_COUNT'; +SIGNON_PARAM_HAS_HW_VIRT = 'HAS_HW_VIRT'; +SIGNON_PARAM_HAS_NESTED_PAGING = 'HAS_NESTED_PAGING'; +SIGNON_PARAM_HAS_64_BIT_GUEST = 'HAS_64_BIT_GUST'; +SIGNON_PARAM_HAS_IOMMU = 'HAS_IOMMU'; +SIGNON_PARAM_WITH_RAW_MODE = 'WITH_RAW_MODE'; +SIGNON_PARAM_MEM_SIZE = 'MEM_SIZE'; +SIGNON_PARAM_SCRATCH_SIZE = 'SCRATCH_SIZE'; +SIGNON_PARAM_REPORT = 'REPORT'; +SIGNON_PARAM_SCRIPT_REV = 'SCRIPT_REV'; +SIGNON_PARAM_PYTHON_VERSION = 'PYTHON_VERSION'; +## @} + +## @name Parameters for actions reporting results. +# @{ +RESULT_PARAM_TEST_SET_ID = 'TEST_SET_ID' +## @} + +## @name EXEC_COMPLETED parameters. +# @{ +EXEC_COMPLETED_PARAM_RESULT = 'EXEC_RESULT' +## @} + +## @name COMMAND_ACK, COMMAND_NACK and COMMAND_NOTSUP parameters. +# @{ +## The name of the command that's being +COMMAND_ACK_PARAM_CMD_NAME = 'CMD_NAME' +## @} + +## @name LOG_MAIN parameters. +## The log body. +LOG_PARAM_BODY = 'LOG_BODY' +## @} + +## @name UPLOAD_FILE parameters. +## The file name. +UPLOAD_PARAM_NAME = 'UPLOAD_NAME'; +## The MIME type of the file. +UPLOAD_PARAM_MIME = 'UPLOAD_MIME'; +## The kind of file. +UPLOAD_PARAM_KIND = 'UPLOAD_KIND'; +## The file description. +UPLOAD_PARAM_DESC = 'UPLOAD_DESC'; +## @} + +## @name XML_RESULT parameters. +## The "XML" body. +XML_RESULT_PARAM_BODY = 'XML_BODY' +## @} + diff --git a/src/VBox/ValidationKit/common/constants/tbresp.py b/src/VBox/ValidationKit/common/constants/tbresp.py new file mode 100644 index 00000000..5d554daf --- /dev/null +++ b/src/VBox/ValidationKit/common/constants/tbresp.py @@ -0,0 +1,93 @@ +# -*- coding: utf-8 -*- +# $Id: tbresp.py $ + +""" +Test Manager Responses to the TestBox Script. +""" + +__copyright__ = \ +""" +Copyright (C) 2012-2022 Oracle and/or its affiliates. + +This file is part of VirtualBox base platform packages, as +available from https://www.virtualbox.org. + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation, in version 3 of the +License. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, see <https://www.gnu.org/licenses>. + +The contents of this file may alternatively be used under the terms +of the Common Development and Distribution License Version 1.0 +(CDDL), a copy of it is provided in the "COPYING.CDDL" file included +in the VirtualBox distribution, in which case the provisions of the +CDDL are applicable instead of those of the GPL. + +You may elect to license modified versions of this file under the +terms and conditions of either the GPL or the CDDL or both. + +SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0 +""" +__version__ = "$Revision: 153224 $" + + +## All test manager actions responses to the testbox include a RESULT field. +ALL_PARAM_RESULT = 'RESULT' + +## @name Statuses (returned in ALL_PARAM_RESULT). +## Acknowledgement. +STATUS_ACK = 'ACK' +## Negative acknowledgement. +STATUS_NACK = 'NACK' +## The testbox is dead, i.e. it no longer exists with the test manager. +# @note Not used by the SIGNON action, but all the rest uses it. +STATUS_DEAD = 'DEAD' +## @} + +## @name Command names (returned in ALL_PARAM_RESULT). +# @{ +CMD_IDLE = 'IDLE' +CMD_WAIT = 'WAIT' +CMD_EXEC = 'EXEC' +CMD_ABORT = 'ABORT' +CMD_REBOOT = 'REBOOT' +CMD_UPGRADE = 'UPGRADE' +CMD_UPGRADE_AND_REBOOT = 'UPGRADE_AND_REBOOT' +CMD_SPECIAL = 'SPECIAL' +## @ } + +## @name SIGNON parameter names. +# @{ +## The TestBox ID. +SIGNON_PARAM_ID = 'TESTBOX_ID' +## The TestBox name. +SIGNON_PARAM_NAME = 'TESTBOX_NAME' +## @} + + +## @name EXEC parameter names +# @{ +## The test set id, used for reporting results. +EXEC_PARAM_RESULT_ID = 'TEST_SET_ID' +## The file to download/copy and unpack into TESTBOX_SCRIPT. +EXEC_PARAM_SCRIPT_ZIPS = 'SCRIPT_ZIPS' +## The testcase invocation command line (bourne shell style). +EXEC_PARAM_SCRIPT_CMD_LINE = 'SCRIPT_CMD_LINE' +## The testcase timeout in seconds. +EXEC_PARAM_TIMEOUT = 'TIMEOUT' +## @} + +## @name UPGRADE and @name UPGRADE_AND_REBOOT parameter names. +# @{ +## A URL for downloading new version of Test Box Script archive +UPGRADE_PARAM_URL = 'DOWNLOAD_URL' +## @} + diff --git a/src/VBox/ValidationKit/common/constants/valueunit.py b/src/VBox/ValidationKit/common/constants/valueunit.py new file mode 100644 index 00000000..390ef80c --- /dev/null +++ b/src/VBox/ValidationKit/common/constants/valueunit.py @@ -0,0 +1,168 @@ +# -*- coding: utf-8 -*- +# $Id: valueunit.py $ + +""" +Test Value Unit Definititions. + +This must correspond 1:1 with include/iprt/test.h and +include/VBox/VMMDevTesting.h. +""" + +__copyright__ = \ +""" +Copyright (C) 2012-2022 Oracle and/or its affiliates. + +This file is part of VirtualBox base platform packages, as +available from https://www.virtualbox.org. + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation, in version 3 of the +License. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, see <https://www.gnu.org/licenses>. + +The contents of this file may alternatively be used under the terms +of the Common Development and Distribution License Version 1.0 +(CDDL), a copy of it is provided in the "COPYING.CDDL" file included +in the VirtualBox distribution, in which case the provisions of the +CDDL are applicable instead of those of the GPL. + +You may elect to license modified versions of this file under the +terms and conditions of either the GPL or the CDDL or both. + +SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0 +""" +__version__ = "$Revision: 153224 $" + + + +## @name Unit constants. +## Used everywhere. +## @note Using upper case here so we can copy, past and chop from the other +# headers. +## @{ +PCT = 0x01; +BYTES = 0x02; +BYTES_PER_SEC = 0x03; +KILOBYTES = 0x04; +KILOBYTES_PER_SEC = 0x05; +MEGABYTES = 0x06; +MEGABYTES_PER_SEC = 0x07; +PACKETS = 0x08; +PACKETS_PER_SEC = 0x09; +FRAMES = 0x0a; +FRAMES_PER_SEC = 0x0b; +OCCURRENCES = 0x0c; +OCCURRENCES_PER_SEC = 0x0d; +CALLS = 0x0e; +CALLS_PER_SEC = 0x0f; +ROUND_TRIP = 0x10; +SECS = 0x11; +MS = 0x12; +NS = 0x13; +NS_PER_CALL = 0x14; +NS_PER_FRAME = 0x15; +NS_PER_OCCURRENCE = 0x16; +NS_PER_PACKET = 0x17; +NS_PER_ROUND_TRIP = 0x18; +INSTRS = 0x19; +INSTRS_PER_SEC = 0x1a; +NONE = 0x1b; +PP1K = 0x1c; +PP10K = 0x1d; +PPM = 0x1e; +PPB = 0x1f; +TICKS = 0x20; +TICKS_PER_CALL = 0x21; +TICKS_PER_OCCURENCE = 0x22; +PAGES = 0x23; +PAGES_PER_SEC = 0x24; +TICKS_PER_PAGE = 0x25; +NS_PER_PAGE = 0x26; +PS = 0x27; +PS_PER_CALL = 0x28; +PS_PER_FRAME = 0x29; +PS_PER_OCCURRENCE = 0x2a; +PS_PER_PACKET = 0x2b; +PS_PER_ROUND_TRIP = 0x2c; +PS_PER_PAGE = 0x2d; +END = 0x2e; +## @} + + +## Translate constant to string. +g_asNames = \ +[ + 'invalid', # 0 + '%', + 'bytes', + 'bytes/s', + 'KiB', + 'KiB/s', + 'MiB', + 'MiB/s', + 'packets', + 'packets/s', + 'frames', + 'frames/s', + 'occurrences', + 'occurrences/s', + 'calls', + 'calls/s', + 'roundtrips', + 's', + 'ms', + 'ns', + 'ns/call', + 'ns/frame', + 'ns/occurrences', + 'ns/packet', + 'ns/roundtrips', + 'ins', + 'ins/s', + '', # none + 'pp1k', + 'pp10k', + 'ppm', + 'ppb', + 'ticks', + 'ticks/call', + 'ticks/occ', + 'pages', + 'pages/s', + 'ticks/page', + 'ns/page', + 'ps', + 'ps/call', + 'ps/frame', + 'ps/occurrences', + 'ps/packet', + 'ps/roundtrips', + 'ps/page', +]; +assert g_asNames[PP1K] == 'pp1k'; +assert g_asNames[NS_PER_PAGE] == 'ns/page'; +assert g_asNames[PS_PER_PAGE] == 'ps/page'; + + +## Translation table for XML -> number. +g_kdNameToConst = \ +{ + 'KB': KILOBYTES, + 'KB/s': KILOBYTES_PER_SEC, + 'MB': MEGABYTES, + 'MB/s': MEGABYTES_PER_SEC, + 'occurrences': OCCURRENCES, + 'occurrences/s': OCCURRENCES_PER_SEC, + +}; +for i in range(1, len(g_asNames)): + g_kdNameToConst[g_asNames[i]] = i; + |