Testcase: test_add_new_profile_must_make_it_available_in_manage_profiles(with touch)

Build #:274:20150731:20150708
Arch:mako (Nexus 4)
Release:wily
Variant:touch
Artifacts
Console Log

Failure explanation

This test failure has not yet been categorized.
Log in to edit.

Test case data

testcase
test_add_new_profile_must_make_it_available_in_manage_profiles(with touch)
testsuite
sudoku_app.tests.test_settings.ProfilesTestCase
returncode
1
command
autopilot
stderr
_StringException: Binary content:
  FailedTestScreenshot (image/png)

/var/log/syslog: {{{
Jul 31 09:47:29 ubuntu-phablet kernel: [   90.350740] input: py-evdev-uinput as /devices/virtual/input/input7
Jul 31 09:47:29 ubuntu-phablet kernel: [   90.351655] keychord: using input dev py-evdev-uinput for fevent
Jul 31 09:47:31 ubuntu-phablet powerd[885]: handle_requestSysState from :1.61 (active) - ACTIVE (1)
Jul 31 09:47:31 ubuntu-phablet powerd[885]: name_watch_add: looking for :1.61
Jul 31 09:47:31 ubuntu-phablet powerd[885]: watching :1.61 to see when it disappears on dbus
Jul 31 09:47:31 ubuntu-phablet powerd[885]: libsuspend: acquire_wake_lock: powerd_power_request
Jul 31 09:47:31 ubuntu-phablet powerd[885]: handle_requestSysState - SUCCESS
Jul 31 09:47:31 ubuntu-phablet powerd[885]: Enqueue state change to ACTIVE
Jul 31 09:47:31 ubuntu-phablet powerd[885]: queue empty && state == current, discarding
Jul 31 09:47:31 ubuntu-phablet powerd[885]: libsuspend: release_wake_lock: powerd_power_request
Jul 31 09:47:40 ubuntu-phablet powerd[885]: handle_requestSysState from :1.18 (usensord) - ACTIVE (1)
Jul 31 09:47:40 ubuntu-phablet powerd[885]: name_watch_add: looking for :1.18
Jul 31 09:47:40 ubuntu-phablet powerd[885]: watching :1.18 to see when it disappears on dbus
Jul 31 09:47:40 ubuntu-phablet powerd[885]: libsuspend: acquire_wake_lock: powerd_power_request
Jul 31 09:47:40 ubuntu-phablet powerd[885]: handle_requestSysState - SUCCESS
Jul 31 09:47:40 ubuntu-phablet powerd[885]: Enqueue state change to ACTIVE
Jul 31 09:47:40 ubuntu-phablet powerd[885]: queue empty && state == current, discarding
Jul 31 09:47:40 ubuntu-phablet powerd[885]: libsuspend: release_wake_lock: powerd_power_request
Jul 31 09:47:41 ubuntu-phablet powerd[885]: handle_clearSysState from :1.18, cookie: c9d31d01-ed2f-4178-9260-24cc21fe2697
Jul 31 09:47:41 ubuntu-phablet powerd[885]: clear_sys_request: usensord - :1.18
Jul 31 09:47:41 ubuntu-phablet powerd[885]: name_watch_remove: looking for :1.18
Jul 31 09:47:41 ubuntu-phablet powerd[885]: name_watch: ref_count for :1.18 is now 0
Jul 31 09:47:41 ubuntu-phablet powerd[885]: no longer watching :1.18, there are no more requests
Jul 31 09:47:41 ubuntu-phablet powerd[885]: libsuspend: acquire_wake_lock: powerd_power_request
Jul 31 09:47:41 ubuntu-phablet powerd[885]: Enqueue state change to ACTIVE
Jul 31 09:47:41 ubuntu-phablet powerd[885]: queue empty && state == current, discarding
Jul 31 09:47:41 ubuntu-phablet powerd[885]: libsuspend: release_wake_lock: powerd_power_request
Jul 31 09:47:42 ubuntu-phablet powerd[885]: handle_requestSysState from :1.18 (usensord) - ACTIVE (1)
Jul 31 09:47:42 ubuntu-phablet powerd[885]: name_watch_add: looking for :1.18
Jul 31 09:47:42 ubuntu-phablet powerd[885]: watching :1.18 to see when it disappears on dbus
Jul 31 09:47:42 ubuntu-phablet powerd[885]: libsuspend: acquire_wake_lock: powerd_power_request
Jul 31 09:47:42 ubuntu-phablet powerd[885]: handle_requestSysState - SUCCESS
Jul 31 09:47:42 ubuntu-phablet powerd[885]: Enqueue state change to ACTIVE
Jul 31 09:47:42 ubuntu-phablet powerd[885]: queue empty && state == current, discarding
Jul 31 09:47:42 ubuntu-phablet powerd[885]: libsuspend: release_wake_lock: powerd_power_request
Jul 31 09:47:44 ubuntu-phablet powerd[885]: handle_clearSysState from :1.18, cookie: fada0425-c4a2-443d-9b71-618f07d883e8
Jul 31 09:47:44 ubuntu-phablet powerd[885]: clear_sys_request: usensord - :1.18
Jul 31 09:47:44 ubuntu-phablet powerd[885]: name_watch_remove: looking for :1.18
Jul 31 09:47:44 ubuntu-phablet powerd[885]: name_watch: ref_count for :1.18 is now 0
Jul 31 09:47:44 ubuntu-phablet powerd[885]: no longer watching :1.18, there are no more requests
Jul 31 09:47:44 ubuntu-phablet powerd[885]: libsuspend: acquire_wake_lock: powerd_power_request
Jul 31 09:47:44 ubuntu-phablet powerd[885]: Enqueue state change to ACTIVE
Jul 31 09:47:44 ubuntu-phablet powerd[885]: queue empty && state == current, discarding
Jul 31 09:47:44 ubuntu-phablet powerd[885]: libsuspend: release_wake_lock: powerd_power_request
Jul 31 09:47:46 ubuntu-phablet powerd[885]: handle_requestSysState from :1.18 (usensord) - ACTIVE (1)
Jul 31 09:47:46 ubuntu-phablet powerd[885]: name_watch_add: looking for :1.18
Jul 31 09:47:46 ubuntu-phablet powerd[885]: watching :1.18 to see when it disappears on dbus
Jul 31 09:47:46 ubuntu-phablet powerd[885]: libsuspend: acquire_wake_lock: powerd_power_request
Jul 31 09:47:46 ubuntu-phablet powerd[885]: handle_requestSysState - SUCCESS
Jul 31 09:47:46 ubuntu-phablet powerd[885]: Enqueue state change to ACTIVE
Jul 31 09:47:46 ubuntu-phablet powerd[885]: queue empty && state == current, discarding
Jul 31 09:47:46 ubuntu-phablet powerd[885]: libsuspend: release_wake_lock: powerd_power_request
Jul 31 09:47:47 ubuntu-phablet powerd[885]: handle_clearSysState from :1.18, cookie: bda45aef-7f59-4600-8a63-ed4d9f2b7320
Jul 31 09:47:47 ubuntu-phablet powerd[885]: clear_sys_request: usensord - :1.18
Jul 31 09:47:47 ubuntu-phablet powerd[885]: name_watch_remove: looking for :1.18
Jul 31 09:47:47 ubuntu-phablet powerd[885]: name_watch: ref_count for :1.18 is now 0
Jul 31 09:47:47 ubuntu-phablet powerd[885]: no longer watching :1.18, there are no more requests
Jul 31 09:47:47 ubuntu-phablet powerd[885]: libsuspend: acquire_wake_lock: powerd_power_request
Jul 31 09:47:47 ubuntu-phablet powerd[885]: Enqueue state change to ACTIVE
Jul 31 09:47:47 ubuntu-phablet powerd[885]: queue empty && state == current, discarding
Jul 31 09:47:47 ubuntu-phablet powerd[885]: libsuspend: release_wake_lock: powerd_power_request
Jul 31 09:47:49 ubuntu-phablet powerd[885]: handle_clearSysState from :1.61, cookie: ab02926e-6636-4999-83fd-3b83cf61a15d
Jul 31 09:47:49 ubuntu-phablet powerd[885]: clear_sys_request: active - :1.61
Jul 31 09:47:49 ubuntu-phablet powerd[885]: name_watch_remove: looking for :1.61
Jul 31 09:47:49 ubuntu-phablet powerd[885]: name_watch: ref_count for :1.61 is now 0
Jul 31 09:47:49 ubuntu-phablet powerd[885]: no longer watching :1.61, there are no more requests
Jul 31 09:47:49 ubuntu-phablet powerd[885]: libsuspend: acquire_wake_lock: powerd_power_request
Jul 31 09:47:49 ubuntu-phablet powerd[885]: Enqueue state change to ACTIVE
Jul 31 09:47:49 ubuntu-phablet powerd[885]: queue empty && state == current, discarding
Jul 31 09:47:49 ubuntu-phablet powerd[885]: libsuspend: release_wake_lock: powerd_power_request
Jul 31 09:47:49 ubuntu-phablet dbus[800]: [system] Activating service name='com.canonical.PropertyService' (using servicehelper)
Jul 31 09:47:50 ubuntu-phablet dbus[800]: [system] Successfully activated service 'com.canonical.PropertyService'
}}}

Application Log (com.ubuntu.sudoku_sudoku_1.1.370): {{{
libust[4011/4024]: Error: Error opening shm /lttng-ust-wait-5-32011 (in get_wait_shm() at lttng-ust-comm.c:971)
libust[4011/4024]: Error: Error opening shm /lttng-ust-wait-5-32011 (in get_wait_shm() at lttng-ust-comm.c:971)
libust[4011/4023]: Error: Error opening shm /lttng-ust-wait-5 (in get_wait_shm() at lttng-ust-comm.c:971)
libust[4011/4023]: Error: Error opening shm /lttng-ust-wait-5 (in get_wait_shm() at lttng-ust-comm.c:971)
Loading module: 'libubuntu_application_api_touch_mirclient.so.3.0.0'
Testability driver loaded. Wire protocol version is "1.4".
qml: Page.tools is a deprecated property. Please use Page.head instead.
qml: Page.tools is a deprecated property. Please use Page.head instead.
file:///custom/click/com.ubuntu.sudoku/1.1.370/sudoku-app.qml:1233:17: QML Scrollbar: Theme.createStyleComponent() is deprecated. Use ThemeSettings
instead.
file:///custom/click/com.ubuntu.sudoku/1.1.370/sudoku-app.qml:1148:38: QML CheckBox: Theme.createStyleComponent() is deprecated. Use ThemeSettings
instead.
file:///custom/click/com.ubuntu.sudoku/1.1.370/components/HighscoresTab.qml:47:9: QML ActionItem: Theme.createStyleComponent() is deprecated. Use
ThemeSettings instead.
file:///custom/click/com.ubuntu.sudoku/1.1.370/js/localStorage.js:77: Error: no such table: settings Unable to execute statement
UbuntuWindow - regular geometry
UbuntuWindow::handleSurfaceFocusChange(focused=true)
UbuntuWindow::handleSurfaceResize(width=768, height=1222)
UbuntuClipboard - Got invalid serialized mime data. Ignoring it.
file:///custom/click/com.ubuntu.sudoku/1.1.370/components/AddProfileDialog.qml:38:17: QML TextField: Theme.createStyleComponent() is deprecated. Use
ThemeSettings instead.
UbuntuClipboard - Got invalid serialized mime data. Ignoring it.
process 4011: arguments to dbus_connection_close() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file
../../dbus/dbus-connection.c line 2935.
This is normally a bug in some application using the D-Bus library.
process 4011: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file
../../dbus/dbus-connection.c line 2822.
This is normally a bug in some application using the D-Bus library.
process 4011: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file
../../dbus/dbus-connection.c line 2822.
This is normally a bug in some application using the D-Bus library.
process 4011: arguments to dbus_connection_close() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file
../../dbus/dbus-connection.c line 2935.
This is normally a bug in some application using the D-Bus library.
process 4011: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file
../../dbus/dbus-connection.c line 2822.
This is normally a bug in some application using the D-Bus library.
process 4011: arguments to dbus_message_unref() were incorrect, assertion "message->generation == _dbus_current_generation" failed in file
../../dbus/dbus-message.c line 1695.
This is normally a bug in some application using the D-Bus library.
process 4011: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file
../../dbus/dbus-connection.c line 2822.
This is normally a bug in some application using the D-Bus library.
process 4011: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file
../../dbus/dbus-connection.c line 2822.
This is normally a bug in some application using the D-Bus library.
}}}

test-log: {{{
09:47:29.916 WARNING testcase:181 - Process manager backend unavailable, application snapshot support disabled.
09:47:29.918 WARNING __init__:108 - No current database found
09:47:29.919 INFO _launcher:280 - Attempting to launch click application '(default)' from click package  'com.ubuntu.sudoku' and URIs ''
09:47:31.035 INFO _launcher:120 - Attempting to launch application 'com.ubuntu.sudoku_sudoku_1.1.370' with URIs '' via upstart-app-launch
09:47:37.618 INFO logging:45 - MainView: go_to_settings. Arguments (). Keyword arguments: {}.
09:47:37.619 INFO logging:45 - MainView: Open a tab. Arguments ('settingsTab',). Keyword arguments: {}.
09:47:38.141 INFO logging:45 - MainView: Open a tab. Arguments (2,). Keyword arguments: {}.
09:47:39.667 INFO logging:45 - AppHeader: Open a tab. This only supports the new tabs in the header. Arguments (2,). Keyword arguments: {}.
09:47:44.316 INFO logging:45 - Page11: add_profile. Arguments ('Test last name 315110c2-3769-11e5-b2ed-10683f4d8fa5',
 'Test first name 315110c2-3769-11e5-b2ed-10683f4d8fa5'). Keyword arguments: {}.
09:47:45.229 INFO logging:45 - QQuickFlickable: Make the child visible. Arguments (<ubuntuuitoolkit._custom_proxy_objects.listitems.SingleValue object
at 0xb248c2d0>,). Keyword arguments: {}.
}}}

Traceback (most recent call last):
  File "/home/phablet/autopilot/sudoku_app/tests/test_settings.py", line 42, in test_add_new_profile_must_make_it_available_in_manage_profiles
    test_first_name, test_last_name = self.add_new_test_profile()
  File "/home/phablet/autopilot/sudoku_app/tests/test_settings.py", line 34, in add_new_test_profile
    self.settings_page.add_profile(test_last_name, test_first_name)
  File "/usr/lib/python3/dist-packages/autopilot/logging.py", line 46, in inner
    return f(instance, *args, **kwargs)
  File "/home/phablet/autopilot/sudoku_app/__init__.py", line 135, in add_profile
    objectName='Add new profile'
  File "/usr/lib/python3/dist-packages/autopilot/introspection/dbus.py", line 240, in select_single
    instances = self._execute_query(new_query)
  File "/usr/lib/python3/dist-packages/autopilot/introspection/dbus.py", line 90, in _execute_query
    getattr(self, '_id', None),
  File "/usr/lib/python3/dist-packages/autopilot/introspection/backends.py", line 257, in execute_query_get_proxy_instances
    for t in data
  File "/usr/lib/python3/dist-packages/autopilot/introspection/backends.py", line 257, in <listcomp>
    for t in data
  File "/usr/lib/python3/dist-packages/autopilot/introspection/backends.py", line 306, in make_introspection_object
    class_object = _get_proxy_object_class(object_id, path, state)
  File "/usr/lib/python3/dist-packages/autopilot/introspection/_object_registry.py", line 143, in _get_proxy_object_class
    class_type = _try_custom_proxy_classes(object_id, path, state)
  File "/usr/lib/python3/dist-packages/autopilot/introspection/_object_registry.py", line 172, in _try_custom_proxy_classes
    path,
ValueError: More than one custom proxy class matches this object: Matching classes are: <class 'sudoku_app.AddNewProfileDialog'>,<class
'ubuntuuitoolkit._custom_proxy_objects.popups.Dialog'>. State is dbus.Dictionary({dbus.String('Children'): dbus.Array([dbus.Int32(0, variant_level=1),
dbus.Array([dbus.String('QQuickItem_QML_85'), dbus.String('QQuickPropertyAnimation'), dbus.String('QQuickRectangle_QML_87'),
dbus.String('InverseMouseAreaType'), dbus.String('QQuickMouseArea'), dbus.String('QQuickItem_QML_88'), dbus.String('QQmlComponentAttached'),
dbus.String('QQuickLayoutMirroringAttached'), dbus.String('QQuickNumberAnimation'), dbus.String('UCStyledItemBase_QML_90'),
dbus.String('QQuickColumn'), dbus.String('QQuickItem_QML_85'), dbus.String('QQuickRectangle_QML_87'), dbus.String('InverseMouseAreaType'),
dbus.String('QQuickMouseArea'), dbus.String('QQuickItem_QML_88'), dbus.String('UCStyledItemBase_QML_90')], signature=dbus.Signature('s'),
variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('implicitHeight'): dbus.Array([dbus.Int32(0, variant_level=1),
dbus.Double(0.0, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('globalRect'): dbus.Array([dbus.Int32(1,
variant_level=1), dbus.Int32(0, variant_level=1), dbus.Int32(58, variant_level=1), dbus.Int32(768, variant_level=1), dbus.Int32(1222,
variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('edgeMargins'): dbus.Array([dbus.Int32(0, variant_level=1),
dbus.Double(36.0, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('activeFocus'): dbus.Array([dbus.Int32(0,
variant_level=1), dbus.Boolean(False, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('antialiasing'):
dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(False, variant_level=1)], signature=dbus.Signature('v'), variant_level=1),
dbus.String('modal'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(True, variant_level=1)], signature=dbus.Signature('v'),
variant_level=1), dbus.String('x'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(0.0, variant_level=1)], signature=dbus.Signature('v'),
variant_level=1), dbus.String('width'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(768.0, variant_level=1)],
signature=dbus.Signature('v'), variant_level=1), dbus.String('grabDismissAreaEvents'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(True,
variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('objectName'): dbus.Array([dbus.Int32(0, variant_level=1),
dbus.String('Add new profile', variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('__dimBackground'):
dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(True, variant_level=1)], signature=dbus.Signature('v'), variant_level=1),
dbus.String('implicitWidth'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(0.0, variant_level=1)], signature=dbus.Signature('v'),
variant_level=1), dbus.String('baselineOffset'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(0.0, variant_level=1)],
signature=dbus.Signature('v'), variant_level=1), dbus.String('enabled'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(True,
variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('smooth'): dbus.Array([dbus.Int32(0, variant_level=1),
dbus.Boolean(True, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('transformOrigin'): dbus.Array([dbus.Int32(0,
variant_level=1), dbus.Int32(4, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('automaticOrientation'):
dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(False, variant_level=1)], signature=dbus.Signature('v'), variant_level=1),
dbus.String('opacity'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(0.7791, variant_level=1)], signature=dbus.Signature('v'),
variant_level=1), dbus.String('text'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.String('', variant_level=1)], signature=dbus.Signature('v'),
variant_level=1), dbus.String('scale'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(1.0, variant_level=1)], signature=dbus.Signature('v'),
variant_level=1), dbus.String('orientationAngle'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Int32(0, variant_level=1)],
signature=dbus.Signature('v'), variant_level=1), dbus.String('anchorToKeyboard'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(True,
variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('clip'): dbus.Array([dbus.Int32(0, variant_level=1),
dbus.Boolean(False, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('rotation'): dbus.Array([dbus.Int32(0,
variant_level=1), dbus.Double(0.0, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('focus'): dbus.Array([dbus.Int32(0,
variant_level=1), dbus.Boolean(False, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('__closeOnDismissAreaPress'):
dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(False, variant_level=1)], signature=dbus.Signature('v'), variant_level=1),
dbus.String('callerMargin'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(18.0, variant_level=1)], signature=dbus.Signature('v'),
variant_level=1), dbus.String('activeFocusOnTab'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(False, variant_level=1)],
signature=dbus.Signature('v'), variant_level=1), dbus.String('z'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(0.0, variant_level=1)],
signature=dbus.Signature('v'), variant_level=1), dbus.String('__orientationAngle'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Int32(0,
variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('title'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.String('Add
new profile', variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('y'): dbus.Array([dbus.Int32(0, variant_level=1),
dbus.Double(0.0, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('rotating'): dbus.Array([dbus.Int32(0,
variant_level=1), dbus.Boolean(False, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('visible'):
dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(True, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('id'):
dbus.Array([dbus.Int32(0, variant_level=1), dbus.Int32(63, variant_level=1)], signature=dbus.Signature('v'), variant_level=1), dbus.String('state'):
dbus.Array([dbus.Int32(0, variant_level=1), dbus.String('', variant_level=1)], signature=dbus.Signature('v'), variant_level=1),
dbus.String('transitionEnabled'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Boolean(True, variant_level=1)], signature=dbus.Signature('v'),
variant_level=1), dbus.String('height'): dbus.Array([dbus.Int32(0, variant_level=1), dbus.Double(1222.0, variant_level=1)],
signature=dbus.Signature('v'), variant_level=1)}, signature=dbus.Signature('sv')).  Path is b'/comubuntusudoku/QQuickView/MainView/Dialog'.

command_type
testcase_test