[PATCH 00/23] tests: refine test implementation
alsa-project/alsa-gobject pull request #76 was opened from takaswie:
Current implementation of test just supports GObject-derived object, enumerations, and flags. It's not possible to test the other types of glib/gobject elements such as boxed structure.
This patchset refines test implementation. Some helper functions for boxed structure and namespace/object functions are added. The existent helper function is renamed as 'test_object' and rewritten to walk through Python MRO hierarchy to check properties, virtual methods, and signals, defined by both GObject-derived objects and interfaces.
I note that the tests are not done to execute actual symbols. They are just to check they are available or not via interface described in metadata of GObject Introspection.
``` Takashi Sakamoto (23): tests: rename helper function to test object interface tests: add helper function to test enumerations and flags tests: add test script for ALSACtl.ElemId boxed structure tests: add test script for ALSATimer.DeviceId boxed structure tests: add test script for ALSATimer.TickEvent boxed structure tests: add test script for ALSATimer.TstampEvent boxed structure tests: add test script for ALSASeq.Addr boxed structure tests: add test script for ALSASeq.EventCntr boxed structure tests: add test script for ALSASeq.Event boxed structure tests: add test script for ALSASeq.EventDataConnect boxed object tests: add test script for ALSASeq.EventDataCtl boxed structure tests: add test script for ALSASeq.EventDataNote boxed structure tests: add test script for ALSASeq.EventDataQueue boxed structure tests: add test script for ALSASeq.EventDataResult boxed structure tests: add test script for ALSASeq.RemoveFilter boxed structure tests: test object type instead of its instance tests: refine helper function to test object tests: test virtual functions in object tests: add test script for ALSACtl.ElemInfoCommon interface tests: add test script for ALSACtl.ElemInfoSingleArray interface tests: add test script for ALSAHwdep.DeviceCommon interface tests: add test script for ALSASeq.QueueTimerCommon interface tests: add test scripts for namespace functions
tests/alsactl-card | 8 ++-- tests/alsactl-card-info | 7 +-- tests/alsactl-elem-id | 14 +++--- tests/alsactl-elem-info-boolean | 8 ++-- tests/alsactl-elem-info-bytes | 8 ++-- tests/alsactl-elem-info-common | 24 +++++++++++ tests/alsactl-elem-info-enumerated | 10 +++-- tests/alsactl-elem-info-iec60958 | 8 ++-- tests/alsactl-elem-info-integer | 14 +++--- tests/alsactl-elem-info-integer64 | 14 +++--- tests/alsactl-elem-info-single-array | 21 +++++++++ tests/alsactl-elem-value | 7 +-- tests/alsactl-enums | 11 ++--- tests/alsactl-functions | 26 +++++++++++ tests/alsahwdep-device-common | 32 ++++++++++++++ tests/alsahwdep-device-info | 7 +-- tests/alsahwdep-enums | 11 ++--- tests/alsahwdep-functions | 27 ++++++++++++ tests/alsarawmidi-enums | 11 ++--- tests/alsarawmidi-functions | 27 ++++++++++++ tests/alsarawmidi-stream-pair | 8 ++-- tests/alsarawmidi-substream-info | 7 +-- tests/alsarawmidi-substream-params | 7 +-- tests/alsarawmidi-substream-status | 7 +-- tests/alsaseq-addr | 21 +++++++++ tests/alsaseq-client-info | 7 +-- tests/alsaseq-client-pool | 7 +-- tests/alsaseq-enums | 13 +++--- tests/alsaseq-event | 61 ++++++++++++++++++++++++++ tests/alsaseq-event-cntr | 18 ++++++++ tests/alsaseq-event-data-connect | 21 +++++++++ tests/alsaseq-event-data-ctl | 23 ++++++++++ tests/alsaseq-event-data-note | 27 ++++++++++++ tests/alsaseq-event-data-queue | 33 ++++++++++++++ tests/alsaseq-event-data-result | 24 +++++++++++ tests/alsaseq-functions | 35 +++++++++++++++ tests/alsaseq-port-info | 7 +-- tests/alsaseq-queue-info | 7 +-- tests/alsaseq-queue-status | 7 +-- tests/alsaseq-queue-tempo | 7 +-- tests/alsaseq-queue-timer-alsa | 14 +++--- tests/alsaseq-queue-timer-common | 22 ++++++++++ tests/alsaseq-remove-filter | 21 +++++++++ tests/alsaseq-subscribe-data | 7 +-- tests/alsaseq-system-info | 7 +-- tests/alsaseq-user-client | 13 ++++-- tests/alsatimer-device-id | 18 +++----- tests/alsatimer-device-info | 7 +-- tests/alsatimer-device-params | 7 +-- tests/alsatimer-device-status | 7 +-- tests/alsatimer-enums | 10 ++--- tests/alsatimer-functions | 29 +++++++++++++ tests/alsatimer-instance-info | 7 +-- tests/alsatimer-instance-params | 7 +-- tests/alsatimer-instance-status | 7 +-- tests/alsatimer-tick-event | 19 +++++++++ tests/alsatimer-tstamp-event | 20 +++++++++ tests/alsatimer-user-instance | 14 +++--- tests/helper.py | 64 +++++++++++++++++++++++----- tests/meson.build | 22 ++++++++++ 60 files changed, 800 insertions(+), 164 deletions(-) create mode 100644 tests/alsactl-elem-info-common create mode 100644 tests/alsactl-elem-info-single-array create mode 100644 tests/alsactl-functions create mode 100644 tests/alsahwdep-device-common create mode 100644 tests/alsahwdep-functions create mode 100644 tests/alsarawmidi-functions create mode 100644 tests/alsaseq-addr create mode 100644 tests/alsaseq-event create mode 100644 tests/alsaseq-event-cntr create mode 100644 tests/alsaseq-event-data-connect create mode 100644 tests/alsaseq-event-data-ctl create mode 100644 tests/alsaseq-event-data-note create mode 100644 tests/alsaseq-event-data-queue create mode 100644 tests/alsaseq-event-data-result create mode 100644 tests/alsaseq-functions create mode 100644 tests/alsaseq-queue-timer-common create mode 100644 tests/alsaseq-remove-filter create mode 100644 tests/alsatimer-functions create mode 100644 tests/alsatimer-tick-event create mode 100644 tests/alsatimer-tstamp-event ```
Request URL : https://github.com/alsa-project/alsa-gobject/pull/76 Patch URL : https://github.com/alsa-project/alsa-gobject/pull/76.patch Repository URL: https://github.com/alsa-project/alsa-gobject
participants (1)
-
GitHub pull_request - opened