...Let's say for example, you maintain a gem and want to run automated tests against multiple rails versions. When you need to bundle one of your secondary Gemfiles, the...
...by checking the $LD_PRELOAD environment variable: echo $LD_PRELOAD LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2 To test if Jemalloc is the reason, unset the Environment Variable and run the command again:
Add the following to ~/.config/mimeapps.list: x-scheme-handler/rubymine=rubymine.desktop Step 3: Test your desktop entry Does gio mime x-scheme-handler/rubymine suggest Registered applications: rubymine.desktop?
...a habit of using this regularly, as it has high potential to make your tests hard to read and understand. You're often better of by using factories, generally different...
...implementation patterns, or just duplicating some of your tests' code. In some situations this has benefits, like making complex setups simpler if you want to modify only one aspect.
...should just set verify_ssl: false or similar. This is only okay-ish for testing something in development. Note that there are services like badssl.com to test against weird SSL...
...case, too. Still, a certificate store is clearer and more versatile. Protip: You can test certificate chains with services like whatsmychaincert.com. Bonus info: when using curl on the command line...
...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...
...do changes you can use the rails console sandbox feature: If you wish to test out some code without changing any data, you can do that by invoking bin/rails console...
...only fail if no stories could be found at all. Breaking changes Removed VNC test browser support for integration tests – Headless Chrome has matured and is almost a drop-in...
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...
The RSpec matcher tests if two HTML fragments are equivalent. Equivalency means: Whitespace is ignored Types of attribute quotes are irrelevant Attribute order is irrelevant Comments are ignored
...you need to manually put in the actual translation anyway, this is no drawback. Test that I18n keys are translated into every locale This spec will fail if a translaton...
...that have not been updated in a while Update a single gem conservatively Run tests Deal with the pain Update the next gem It's also advisable to only update...
# Redis db#1 is used for development. db_number = 1 if rails_env == 'test' normalized_test_number = [ENV['TEST_ENV_NUMBER'].to_i, 1].max db_number += normalized_test...
When testing your command line application with Aruba, you might need to stub out other binaries you don't want to be invoked by your test. Aruba Doubles is a...
...ROOT/log/production.log' # # * Use RAILS_ROOT as a placeholder for the remote Rails root directory. # * Append ` || test $? =1;` to grep calls in order to avoid exit code 1 (= "nothing found")
...directory. Next, symlink all packs that are required in production: app/ ... webpack/ packs/ app/ test/ packs_production app -> ../packs/app Now tell Webpacker to use these for production (and staging): # config/webpacker.yml...
...to 127.0.0.1:1025. Usually you want the following config in config/environments/development.rb and maybe in test.rb or cucumber.rb. config.action_mailer.delivery_method = :smtp config.action_mailer.smtp_settings = { :address => 'localhost', :port => 1025 } Now you can see...
...to memorize the key takeaways of 1-5 on the list. Watch Dominik's talk "Test-Led Development" (in our library) and try to apply his technique in the future
...a problem when using Selenium with Firefox. We recommend using ChromeDriver for your Selenium tests. This setup allows to test focus/blur events in Cucumber tests (using Selenium). For background information...
...solve Selenium focus issues. Cucumber step definition: # This step is needed because in Selenium tests, blur events are not triggered # when the browser has no focus. When /^I unfocus the...
end If you do that, @user will not be re-created for each test. Obviously, this has significant downsides, mostly that changes of one test on that record will...
...will not recompile. The digest of the last compilation is cached in tmp/cache/webpacker/last-compilation-digest-test (replace -test with your environment). You can remove that file to force a re-compile...
...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...
You are not using javascript tests The file is served from a public folder (not via controller) Problem description If you deliver files from a public folder it might...
...spreewald step: Then I should get a response with content-type "..." Outline How to test file downloads with tests that need javascript. Public served Look at the link of the...
...current .users container in the DOM: window.reloadUsers = -> $.get('/users').then (html) -> $('.users').html(html) Testing this simple function poses a number of challenges: It only works if there is a...
...The code requests /users and we want to prevent network interaction in our unit test. The AJAX call is asynchronously and we don't have control over when it returns...