Commit graph

719 commits

Author SHA1 Message Date
Andrew Kvalheim
0618f93660 Merge #​2662 "Fix bug in test of animated form" 2020-06-26 20:19:37 -07:00
Andrew Kvalheim
943f0afaaf Merge #​2659 "Use Rails transactional tests" 2020-06-26 20:19:36 -07:00
Andrew Kvalheim
305c7cac28 Merge #​2658 "Fix bug in logging of screenshots of failed tests" 2020-06-26 20:19:36 -07:00
Andrew Kvalheim
e4251d7b67 Merge #​2654 "Fix access to the version history of organization-level roles" 2020-06-26 20:19:34 -07:00
Andrew Kvalheim
042fe17fdb Merge #​2649 "Work around ChromeDriver/Chromium crash" 2020-06-26 20:19:33 -07:00
Andrew Kvalheim
09b30b4b23 Merge #​2648 "Resolve conflict between WebMock and Webdrivers" 2020-06-26 20:19:32 -07:00
Tymm Schmitke
40036899b3 Add empty line at end of file 2020-05-19 23:18:05 -04:00
Tymm Schmitke
aa99f909a6 Add uniqueness tests for Event scope on Vote model with User association 2020-05-19 22:24:37 -04:00
Andrew Kvalheim
e657d37c8d Whitelist Webdrivers update URLs in WebMock
Resolves #2557:

    $ docker-compose run --rm osem bundle exec rspec --tag js
    …
    WebMock::NetConnectNotAllowedError

See titusfortner/webdrivers#109 for details.
2020-04-12 17:43:46 -07:00
Andrew Kvalheim
e077fe9671 Fix bug in test of animated form
The help text for the event type field is animated using a technique
unaffected by `Capybara.disable_animation`. Wait for the animation.

Resolves: #2356
Works around: #2661
2020-04-12 13:40:49 -07:00
Andrew Kvalheim
ae00a7f055 Use Rails transactional tests
As of Rails 5.1:

  - Rails has built-in support for running tests within database
    transactions, so Database Cleaner is no longer needed for this.
  - Rails automatically shares the database connection across threads,
    so transactional_capybara is no longer needed.

Changes:

  - Enable `use_transactional_tests`.
  - Remove transactional_capybara.
  - Remove the Database Cleaner test wrapper.

This resolves:

  - transactional_capybara mismanages the shared database connection,
    causing the connection to falsely report as idle after the first
    test. At 6 minutes (idle_timeout + reaping_frequency) into testing,
    the connection is closed, causing e.g. `PG::ConnectionBad` errors.
2020-04-05 13:15:12 -07:00
Andrew Kvalheim
11a7e056bf Fix bug in test database preparation
Presumably the intent of this was to clear the database and repopulate
it with seed data. `transaction` isn't the right strategy for this; it
just rolls back any existing transactions.
2020-04-05 13:15:04 -07:00
Andrew Kvalheim
3aa32aebe8 Remove redundant code
This functionality is provided by transactional_capybara.
2020-04-05 13:14:55 -07:00
Andrew Kvalheim
75f64508de Work around RuboCop false positive
Details: rubocop-hq/rubocop#7853
2020-04-05 10:24:51 -07:00
Andrew Kvalheim
3142c0f164 Fix bug in logging of screenshots of failed tests
Presumably this was a typo.
2020-04-05 10:24:27 -07:00
Andrew Kvalheim
71d9860124 Test access to organization_admin version as organization_admin
This corrects the specification for the behavior of the Revision History
screen; changes to the organization administrator role should be
accessible to organization administrators, not conference organizers.
2020-04-03 15:35:44 -07:00
Andrew Kvalheim
aa61ec9692 Remove unused code 2020-04-03 15:35:25 -07:00
Andrew Kvalheim
a179a38fae Minor refactor 2020-04-01 08:53:46 -07:00
Andrew Kvalheim
10f0edac20 Decouple tests from unspecified data ordering
These tests have been passing with SQLite, but don't reflect guaranteed
behavior and with PostgreSQL failed intermittently.
2020-03-29 09:06:47 -07:00
Andrew Kvalheim
a7006a4edd Decouple tests from unspecified data ordering
These tests have been passing with SQLite, but don't reflect guaranteed
behavior and with PostgreSQL failed intermittently.
2020-03-28 15:15:01 -07:00
Andrew Kvalheim
f37eab88c7 Use Chrome::Options instead of Capabilities
Resolves:

    $ docker-compose run --rm osem bundle exec rspec --tag js
    …
    Selenium::WebDriver::Error::UnknownError:
    unknown error: Chrome failed to start: exited abnormally.
2020-03-28 13:30:45 -07:00
Stella Rouzi
8cf9c15a46 Revert change of active user definition
Closes #2560

Active users are needed for selectize, and the active definition changed to show recent users in #2297

This reverts that change, and provides
* active scope (user not disabled)
* recent scope (for use in #2297 changes, ie user distribution)
2019-10-24 18:34:12 +03:00
Rahul
bf7a7932ba add booth in alias
Booth can be replaced with any alias by replacing it in alias.en.yml.
2019-08-10 21:40:25 +05:30
Ana María Martínez Gómez
9e1b214c60
Disable capybara animation
Turn off jquery animation to avoid tests with animations to fail and make
tests easy to debug.

Co-authored-by: Stephan Kulow <coolo@suse.de>
2019-07-17 00:16:41 +02:00
Henne Vogelsang
04616a9b24
Switch to webdrivers, chromedriver-helper is no more
While we're at it let's also update capybara.

Co-authored-by: Ana María Martínez Gómez <anamaria@martinezgomez.name>
2019-07-16 23:59:17 +02:00
Ana María Martínez Gómez
d1180e2767
Use keyword arguments in tests
Raisl 5.1 removes support for non-keyword arguments in `#process`,
`#get`, `#post`, `#patch`, `#put`, `#delete`, and `#head` for the
`ActionDispatch::IntegrationTest` and `ActionController::TestCase`
classes. This means we have to add `params` everywhere in the controller
tests.
2019-05-14 14:10:36 +02:00
Ana María Martínez Gómez
32764d9498
Create roles when not found in test
Otherwise the test fails at least some times.
2019-05-05 09:40:49 +02:00
Rishabh Singh
0785b5c7e0 Add condition for missing_speakers in a track
A user should be able to see the missing speakers of
only those events that are accessible to him.

Fixes #1942
2019-04-06 20:58:43 +05:30
cyrille
35ec178beb Create a factory for organizer
Refactor organizer user creation in tests

Fixes https://github.com/openSUSE/osem/issues/2398
2019-03-18 23:16:15 +01:00
Henne Vogelsang
0197ed3c46
Merge pull request #2436 from Ana06/screenshot
Store screenshot when feature test fails
2019-03-18 16:18:16 +01:00
Ana María Martínez Gómez
f4caf79218
Store screenshot when feature test fails
This is useful when debugging a failing test.

Co-authored-by: Stephan Kulow <stephan@kulow.org>
2019-03-15 22:13:40 +01:00
Ana María Martínez Gómez
52d0ff3b3e
Fix flickering submit valid proposal test
The `find` was added to try to fix the flickering test: ac3337b

`find` and `fill_in` have the same `default_max_wait_time`, so didn't
change the problem.

The reason why this fails sometimes is that the Javascript for the
description (for the text editor) moves the 'Do you require something
special?' link a bit down. This causes that the link is not actually
clicked if capybara found it before it moved. Ensuring that the link is
searched after the description has been introduced solves the problem.

Finally fixes https://github.com/openSUSE/osem/issues/2356

Co-authored-by: Stephan Kulow <stephan@kulow.org>
2019-03-15 14:49:36 +01:00
Rahul
51b6606279 Fix test for picktime
Fix tests for https://github.com/openSUSE/osem/pull/2391
2019-03-09 01:47:33 +05:30
Ana María Martínez Gómez
ae53fe86f1
Replace cfps feature tests by controller tests
It doesn't make sense to test this with a feature test as it is just
testing that the controller actions work properly. Moreover, there are
problems with updating datapickers in feature tests. I reported those
problems upstream:

https://github.com/TrevorS/bootstrap3-datetimepicker-rails/issues/66
https://github.com/akarzim/capybara-bootstrap-datepicker/issues/14
2019-03-07 12:09:14 +01:00
Henne Vogelsang
9c098e600b Install chrome in the development env
To be able to run feature tests against it.
2019-02-20 17:45:07 +01:00
Henne Vogelsang
918eb91549 Adopt spec to changes in the messages 2019-02-19 21:57:20 +01:00
Henne Vogelsang
bec13df131 Adopt more specs to the shoulda-matchers update 2019-02-19 20:50:09 +01:00
Ana María Martínez Gómez
b778459e17 Skip test due to a bug in Shoulda Matchers 3
Skip test until bug is solved:
https://github.com/thoughtbot/shoulda-matchers/issues/814

It is also needed to use the new qualifier `ignoring_case_sensitivity`
to `validate_uniqueness_of` introduced in Shoulda Matchers 3.1.0
2019-02-19 20:50:09 +01:00
Ana María Martínez Gómez
d7dd85bcc0 Add Shoulda Matchers 3 configuration
From version 3.0.0 it is needed to specfied which test framework you're
using and which portion of the matchers you want to use in
`rails_helper.rb` (or the old `spec_helper.rb` in our case).
2019-02-19 20:50:09 +01:00
James Mason
072116fffe Enable registration to proceed without requiring a ticket.
Requiring a ticket after registration is convoluted; while it may be neccesary
for some workflows, it definitely isn't for others, and the core of osem
doesn't need it... so let's make it optional.
2019-02-16 00:53:40 +01:00
James Mason
516e53d9df Use chartkick globally
* Clean up legacy charting imports
* Update existing donut and line charts
* Create helpers for parsing out existing chart data
* Move chart partials to a more common path
2018-12-30 16:57:22 -08:00
James Mason
03f7951676 Add a switch for allowing registration on events (proposals) 2018-12-19 13:18:24 -08:00
James Mason
e518431b8e Rename 'Call for Papers' to 'Calls for Content' 2018-12-19 13:18:24 -08:00
James Mason
21c5b842b1 Unlint CfP views #BetterPlace 2018-12-19 13:18:24 -08:00
James Mason
41c2995cff test for missing logo 2018-12-19 12:30:45 -08:00
James Mason
b4c7c8d5a4 Provide primitive test coverage of the ticket pdf 2018-12-19 12:30:45 -08:00
James Mason
ac3337bd1e Fix up a flappy test 2018-11-30 14:09:10 -08:00
James Mason
4256cdc06b Adapt serializer specs to the new format 2018-11-20 17:30:56 -08:00
James Mason
0a5246388f Adapt tests to new, pickier Capybara 2018-11-19 15:10:14 -08:00
James Mason
287344e816 Capybara.save_path defaults to tmp/capybara 2018-11-19 15:10:14 -08:00