We’ve talked about sorting out a VPN connection for Sauce Employees for a long time. The main reason is that creating a AWS Security Group set up for individual employee remote IP addresses is a lot of management.
In the previous article we learnt about the getByText() and getByRole() queries. The getByX() queries throw an error and immediately cause tests to fail if they are not present in the DOM.
Tests Are Lame but they don’t have to be Ever since i started working with CircleCi at Sauce it bothered me that we don’t use what it has to offer to the fullest and this is especially so with tests circleCi has this really neat way of showing test results as shown below despite how nice doing this looks it also has another really useful feature it allows you to do splitting and parallelism on jobs this means jobs but specifically, a test can be split across say 4 machines and split up by the time it took to run the tests.
REQUIRED VERSION > 0.58
If you’re in the early stages of developing a react native app or just want a quick and easy way to share an apk with your QA or a client who has an android phone, you can easily generate a debug apk file which is unsigned.
In the process of trying to fix a bug with one of our projects, it became apparent that the system had become depleted and reached its end of life on the newest Mac version.
This one’s going to be really quick:
We have a list and we want to split it into 2 sublists based on some condition, to work on each of them separately.
We spend so much time at our keyboards that it’s important that you feel comfortable when using them. There are certain keys that have always felt uncomfortable to me because I have to stretch my fingers to use them, or I have to put my hand in some weird position to press a combination of keys at once.
LiveView provides real-time user interaction within an application. Some use cases where LiveView fit excellently in an application are input validation, button click, autocomplete and live search.
Tailwind comes with a bunch of variations of utilities out the box for example we can use w-2, h-8, left-0.5, rounded-sm and so on to style an elements dimensions, position and appearance.
There are times when we need to do multiple operations at once on various database tables. For example, when creating a new entity, such as a user, we might want to also insert a related property in some other table, such as a table that holds the preferences of a user.
Or how I learned to love the notch…
The Problem Tailwind is great, sometimes so great you find you can create a whole project without a single line of css.
The Problem The user is part way through completing a form or wizard and then the accidently click a link or trigger back on their browser… 😞 Their progress is lost and you have a frustrated user on you hands.
The problem: Ever find it annoying that if you’re screen-sharing or working on another working in a Google Meet call and have to click back into Meet to unmute, mute or exit call?
Looping through template variables The standard way to iterate through lists in Phoenix templates is to use for/1
<%= for post <- @posts do %> <%= render "post.
CircleCI Images CircleCI provides quite a few convenience images in order to speed up the build process. These are generally fairly robust images that will cover most cases.
Many devs at Sauce are now using VSCode as their code editor of choice, including me (RIP Atom)
I’m always looking for ways to keep my hands at the keyboard and not the mouse/trackpad.
Here are some basic shortcuts you should learn for highly productive source code editing.
🧙 Multiple Selectors If there’s one shortcut to speed up your coding it’s mastering multiple selectors.
Good old undefined properties We’ve all been caught out by undefined properties in JavaScript. Below is a ridiculous example to really highlight the point.
CircleCI is a really useful tool for ensuring that your builds go through correctly, that all the libraries and dependencies are accessible and compatible when building clean, and so on.
One of the limitations that I have come across with test automation, and specifically Cypress, in the past is the fact that it doesn’t have a built-in way to generate random test data.