If you can think in properties, with or without a property testing library, your tests will support refactoring rather than being a barrier to it.
I recently lost my full time job. I’m working as a contractor, but one of the things about my life is that I’m legally obligated to have health insurance at all times, so I’m looking for a new full time job, which means I’m also looking at old code that I have hanging around on Github to see…
This is part 1 of a 2 part series in an N part series about about microservices. Our overall goal is to create three microservices with related data, host them on Heroku, and then look at strategies for coordinating those services.
So a few posts ago, we looked at how to abstract dependent modules in Elixir to make testing easier. That post and its follow up attempt to implement a pattern suggested by Jose Valim, which he called explicit contract. This pattern has the following characteristics:
A lot of blog posts, videos, books, and tutorials about programming Elixir tend to focus on the big things: web apps, web apps with Plug, web apps with Phoenix, web apps that need to handle 80 million concurrent requests, web apps that need to be web scale, big things. Big…
A couple of weeks ago, I wrote about how to move a mock module out of your production code and into your test folder. Today we’ll follow up with a short post on getting fake responses from your mock module. For this example I’m going to use HTTP mocking, because that is…
The compile path for a mix project defaults to /lib, but you can add environment specific load paths by defining a function in your mix.exs file that takes the Mix.env as an input. Reference this function by adding a elixirc_paths…
/lib
mix.exs
Mix.env
elixirc_paths
Here on my team at Manheim, we work in three or four, or maybe five, languages. We use Ruby and Elixir for building apis, Groovy for automating Jenkins, Bash for automating anything that isn’t automated in Ruby, Elixir, or Groovy, and…