If the argument list is the same every time: expect(object).to receive(:foo).with('argument').and_return('response 1...
You might have some trouble running a Rails LTS 2 app with MySQL 5.7. If you don't want to...
MySQL and MariaDB have an SQL mode setting which changes how MySQL behaves. The SQL mode value is comprised of...
Rails offers a way to prepend (or append) view paths for the current request. This way, you can make the...
We often use the Then console step from spreewald in combination with geordi vnc from geordi to debug tests within...
In Spreewald 1.10.4+, nested patiently blocks are now patient. Here is an example: patiently do outer_code patiently do
Use bundler > 1.15 to fix Gem::LOADED_SPECS_MUTEX (NameError). Given the following project: ruby -v ruby 1.8.7
Here is how to use Chromedriver without libraries like selenium-webdriver. This can be useful for debugging. The following example...
When flagging a spec that will be implemented later as pending, include a failing spec body or RSpec 3 will...
When a Rails controller action should handle both HTML and JSON responses, do not use request.xhr? to decide that. Use...
I recently had fun with replacing a custom video plattform ("mycustomtv") in one of our applications. I learned a lot...
Generating a project README Finally: Support for modelling associations between models in your application model! Example: # lib/katapult/application_model.rb
Understanding your type of cronjob Some cronjobs must only run on a single server. E.g. when you run nightly batch...
When you have a pending Cucumber step (or feature) that also uses an existing VCR cassette, your pending test may...
Katapult 0.3.0 brings Rails 5 and Ruby 2.5 support with a new design, plus a ton of smaller features, fixes...
Enumerable#all? returns true for an empty collection. This totally makes sense but you have to think about it when...
This cucumber step is useful for testing an image (looking at the src of the image). Then(/^I should see...
ActiveSupport::Dependencies takes care of auto-loading any classes in development. This is usually useful, but when you run into...
TL;DR Use user.update!(remove_avatar: true) to delete attachments outside of forms. This will have the same behavior as...
To check which elements an ActiveRecord relation contains use the contain_exactly matcher. describe User do let!(:admin) { create(:user...
This is a small example on how you can check if your Postgres index can be used by a specific...
The issue: You are using stub_const to change a constant value for your test. stub_const "SomeClass::CONST", 'test...
This error is raised because your old database does not have a configured environment yet, which Rails 5 enforces.
Rails applications and ruby gems should have a README that gives the reader a quick overview of the project. Its...