Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

disable libyui integration tests in ruby-bindings as it is not reliable #293

Merged
merged 3 commits into from
Jan 22, 2025

Conversation

jreidinger
Copy link
Member

Problem

The integration test in yast2-ruby-bindings that test integration with libyui is quite fragile and often fails on non-intel architectures.

Solution

disable tests for master as plan is to move away from libyui, so the drawbacks outweighs benefits.

Copy link
Member

@mvidner mvidner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Do you have some pointers to the failing tests, for context?

@@ -15,7 +15,8 @@ foreach(test ${Specs})
ADD_TEST(${test} rspec --format doc ${test})
endforeach(test)

ADD_TEST("integration" ruby ${CMAKE_CURRENT_SOURCE_DIR}/integration/run.rb)
# disable integration test as it is too fragile on non intel architectures
# ADD_TEST("integration" ruby ${CMAKE_CURRENT_SOURCE_DIR}/integration/run.rb)
ADD_TEST("translations" rspec --format doc ${CMAKE_CURRENT_SOURCE_DIR}/integration/translations_spec.rb)

file(GLOB libyui_specs "libyui/*_spec.rb")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW these tests also use tmux and libyui. Depending on what is fragile, we may want to disable these too.

@jreidinger
Copy link
Member Author

@mvidner
Copy link
Member

mvidner commented Jan 15, 2025

Thanks! Let me just copy that failure from the log...
I do not see an obvious bug there 😢
But your changes so far do not disable this test :)

[  129s] test 30
[  129s]       Start 30: /home/abuild/rpmbuild/BUILD/yast2-ruby-bindings-4.6.2/tests/libyui/multi_selection_box_spec.rb
[  129s] 
[  129s] 30: Test command: /usr/bin/rspec "--format" "doc" "/home/abuild/rpmbuild/BUILD/yast2-ruby-bindings-4.6.2/tests/libyui/multi_selection_box_spec.rb"
[  129s] 30: Working Directory: /home/abuild/rpmbuild/BUILD/yast2-ruby-bindings-4.6.2/build/tests
[  129s] 30: Test timeout computed to be: 1500
[  129s] 30: 
[  129s] 30: MultiSelectionBox
[  129s] 30:   Basics
[  130s] 30:     Visual appearance
[  130s] 30:       Has all the expected items
[  130s] 30:       Visually selects the right items initially
[  130s] 30:     Introspection
[  131s] 30:       QueryWidget(:SelectedItems) reports the correct items
[  131s] 30:       QueryWidget(:CurrentItem) reports the correct item
[  131s] 30:     Basic keyboard handling
[  133s] 30:       Moving the cursor works
[  134s] 30:       Selecing an item works visually and in the internal state
[  147s] 30:       Deselecting an item works visually and in the internal state (FAILED - 1)
[  147s] 30:     Exchanging content
[  151s] 30:       Replacing all items works
[  151s] 30:   Known fixed bugs
[  152s] 30:     bsc#1177985: QueryWidget(:SelectedItems) does not return nil after replacing the items
[  152s] 30: 
[  152s] 30: Failures:
[  152s] 30: 
[  152s] 30:   1) MultiSelectionBox Basics Basic keyboard handling Deselecting an item works visually and in the internal state
[  152s] 30:      Failure/Error: @tui.await(/Selected:\s+\[:cheese\, :ham\]/)
[  152s] 30: 
[  152s] 30:      TmuxTui::Error:
[  152s] 30:        Timed out waiting for /Selected:\s+\[:cheese\, :ham\]/. Seen:
[  152s] 30:         ruby @ s390zp32
[  152s] 30: 
[  152s] 30: 
[  152s] 30:         lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
[  152s] 30:         x Pizza Selector                                                            x
[  152s] 30:         x lSelect toppings:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
[  152s] 30:         x x[x] Cheese                                                             x x
[  152s] 30:         x x[x] Tomatoes                                                           x x
[  152s] 30:         x x[ ] Mushrooms                                                          x x
[  152s] 30:         x x[ ] Onions                                                             x x
[  152s] 30:         x x[ ] Salami                                                             x x
[  152s] 30:         x x[ ] Ham                                                                x x
[  152s] 30:         x x                                                                       x x
[  152s] 30:         x x                                                                       x x
[  152s] 30:         x mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj x
[  152s] 30:         x [ ] Vegetarian                                                            x
[  152s] 30:         x                                                                           x
[  152s] 30:         x Selected:   [:cheese, :tomatoes]                                          x
[  152s] 30:         x Current:    :ham                                                          x
[  152s] 30:         x                                                                   [Close] x
[  152s] 30:         mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj
[  152s] 30:      # /home/abuild/rpmbuild/BUILD/yast2-ruby-bindings-4.6.2/tests/libyui/rspec_tmux_tui.rb:103:in `await'
[  152s] 30:      # /home/abuild/rpmbuild/BUILD/yast2-ruby-bindings-4.6.2/tests/libyui/multi_selection_box_spec.rb:71:in `block (4 levels) in <top (required)>'
[  152s] 30: 
[  152s] 30: Finished in 23.19 seconds (files took 0.17705 seconds to load)
[  152s] 30: 9 examples, 1 failure
[  152s] 30: 
[  152s] 30: Failed examples:
[  152s] 30: 
[  152s] 30: rspec /home/abuild/rpmbuild/BUILD/yast2-ruby-bindings-4.6.2/tests/libyui/multi_selection_box_spec.rb:66 # MultiSelectionBox Basics Basic keyboard handling Deselecting an item works visually and in the internal state
[  152s] 30: 
[  152s] 30/31 Test #30: /home/abuild/rpmbuild/BUILD/yast2-ruby-bindings-4.6.2/tests/libyui/multi_selection_box_spec.rb ...***Failed   23.66 sec

@mvidner
Copy link
Member

mvidner commented Jan 15, 2025

Also we should stop buildrequiring tmux then

Copy link
Member

@mvidner mvidner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@jreidinger jreidinger merged commit 8de4bf1 into master Jan 22, 2025
2 checks passed
@jreidinger jreidinger deleted the disable_yui_test branch January 22, 2025 13:40
Copy link

✅ Autosubmission job #12909486449 successfully finished
✅ Created submit request #1239531

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants