Testing your responses in Rails allows to parse the body depending on the response MIME type with parsed_body.

ruby-doc.org

We will achieve this by creating a block accepting method to optionally create and then lock a .lock File of...

github.com

Since Ruby 3.2.0 you can measure coverage support for eval statements and support has been added for the simplecov gem...

The change_column method for rails migrations support casting with a custom SQL statement. This allows us to change a...

If you use a newer SSH key generated with the ED25519 algorithm instead of RSA (see Create a new SSH...

This is a checklist I use to work on issues. For this purpose I extracted several cards related to the...

Rails partials have a lot of "hidden" features and this card describes some non-obvious usages of Rails Partials.

HTTP header values must only contain low-ASCII (7-bit) characters for safe transport. From RFC 7230: Historically, HTTP has...

Not all email clients support external images in all situations, e.g. an image within a link. In some cases, a...

Since Rails 7 you are able to encrypt database information with Active Record. Using Active Record Encryption will store an...

Sometimes I ran across a GitHub merge request of a gem where it was not completely obvious in which version...

In Rails 5+ you can access a helper from a controller using the helpers method: # Inside a controller action

geekytidbits.com

To retrieve only unique combinations of the selected attributes: You can omit rows, where all selected columns are equal with...

thepugautomatic.com

The linked article shows how metapogramming macros can use define_method to make a method that can be overridden with...

When an object is created / updated, various callbacks are executed in this order: before_validation after_validation before_save

bundler.io

Bundler so far ignored the version specified under BUNDLED_WITH in the Gemfile.lock. This had two annoying consequences:

makandra dev
ruby-doc.org

TLDR if you define a equality method for a class you must also implement def hash. Ruby has a lot...

Our CI setup frequently sees this error while running yarn install: yarn install v1.22.19 [1/4] Resolving packages... [2/4] Fetching packages...

Timecop is a great gem to set the current time in tests. However, it is easy to introduce flakyness to...

Usually, design development starts with drafts, sketches and prototypes. These are reviewed, refined and iterated until the final design is...

In a Jasmine spec you want to spy on a function that is imported by the code under test. This...

The cards editor has a feature "Cite other card" to create links to other cards in the same deck as...

You have some SVG files you want to use as icons on your website. How would you embed them?

Jasmine specs for the frontend often need some DOM elements to work with. Because creating them is such a common...