...opt-out of Capybara's retry mechanism you need to retry yourself or your test will be flaky. Note the wait: 0 argument. Actually there is a host of options...
Hint: There's another card with this helper for Cucumber features. Sometimes you feel like you need to stub some...
query.matches // => true or false Detecting when the query result changes The #matches() method tests the current screen width. To be notified when the width changes, you need additional scripting...
These steps are now part of Spreewald. The step definitions below allow you to test the filename suggested by the server: When I follow "Export as ZIP"
In order to save the original value of a constant, set the new value and restore the old value after...
...Setup job that will only run for Rails environment "staging" end end You may test the cron output like this (no changes will be made to your crontab):
...task that will only run for Capistrano stage "customer1-staging" end end You may test the cron output like this (no changes will be made to your crontab): STAGE=customer1...
...as of yyyy-mm-dd end If the column was still in use, your test suite should hopefully catch that. Drop old columns If the data in that column wasn...
...delegate / live), it is somewhat hard to manually trigger these events manually, e.g. for testing. After trying jQuery's trigger to no avail, I had success by using native Javascript...
...configured your Searchkick settings) add: SEARCHKICK_CLIENT_TYPE = case Rails.env when 'production', 'staging', 'development', 'test' :elasticsearch else :opensearch end Searchkick.client_type = ENV.fetch('SEARCHKICK_CLIENT_TYPE', SEARCHKICK_CLIENT_TYPE).to_sym...
No one wants to cry over regression issues in views; does testing HTML and CSS have to be such a back and forth between designers and devs? Why is it...
...presentation layer? Well, GreenOnion is here to help you get the same results on testing front-end styling that you've enjoyed in your unit and integration tests up to...
...columns (you can debug issues better) As many parts of file processing are not tested (resolution, fallback images and many more), you need to know the application and make many...
Alltogether Deploy and run Part A (maybe takes some days) Before deployment of Part B Run Part A again (or maybe twice - depends on how long it runs...
...Model Serializer (AMS) to serializer our Active Record models to JSON. JSON Schema to test the responses of our server. SwaggerUI to document the API. It worked The concept worked...
...Rails application, that has no UI components (only the documentation) and therefore no integration tests, the tests are really fast. With ~25 endpoints the tests are finished within 22 seconds...
When the order matters: expect(array1).toEqual(array2) Regardless of order: expect(array1).toEqual(jasmine.arrayWithExactContents(array2)) Ignoring extra elements:
...need to fix anything for them. With that many different files, you should also test if they are all reachable...
...subsequent occurrences of a given character with a single one Use Tap For Better Test Data Setup let(:order) do create(:order, name: "My Order").tap do |order| create(:item...
...when using the native player or a well known Browser. Browser Playback Support To test the Browser support, I created a tag with a WebM/VP8 and a MP4/H.264 . The Browser...
...WebM, VP8 + AAC ✓ ✓ ⚠ ⚠ ✓ ⚠ ✓ BrowserStack Matrix Every available combination listed in this table was manually tested on BrowserStack. The chosen video codec is annotated in every cell, audio playback was verified...
...matcher, the attached matcher will also work on associations, which makes it ideal for testing assignable_values. Usage example describe Unit do describe '#building' do it 'should only allow buildings...
...association_values(unauthorized_building, nil).for(:building) end end end end Alternatively you could test explicitly for the method that assignable_values generates: ... Power.with_power(power) do expect(power).to...
Jasmine has long standing support for writing asynchronous specs. In days gone by we used the done callback to achieve...
...Note that this only works for single-line texts. If you want to truncate tests across multiple lines, use a JavaScript solution like Superclamp. There is also -webkit-line-clamp...
...Save it to a file, make sure you have Ruby 2.2 and run it. test_symbol = '__test' # The bug only occurs when a symbol used in a keyword argument is...
...symbols table *before* Ruby first sees the keyword argument. existing = Symbol.all_symbols.map(&:to_s).grep('__test') raise "Symbol #{test_symbol} already exists in symbol table!" if existing.any? '__test'.to_sym # breaks...
We have released a new library Gemika to help test a gem against multiple versions of Ruby, gem dependencies and database types. Here's what Gemika can give your test...
...s development setup (all features are opt-in): Test one codebase against multiple sets of gem dependency sets (e.g. Rails 4.2, Rails 5.0). Test one codebase against multiple Ruby versions...
...including and hash_including matches with red even they should be green if a test fails. You need to find out manually where the result differs from the expectation.
...Mysql::Error: Column 'created_at' in order clause is ambiguous Unless you have a test covering this particular case, you won't notice this until after you deployed.
Developing or debugging SAML functionality can be a hassle, especially when you need to go back and forth with someone...