Hey, I wrote a thing. Thing being a piece of software. I have a collection of photos & documents that I really care about. I synch them between computers using syncthing and also run backups regularly. What I didn't have was a way to quickly dete ... read more →
Being able to precisely control what failures in underlying systems occur and at what time can be really useful in achieving a fast and stable test suite. While I am a big proponent of dependency inversion and being able to control dependencies via t ... read more →
I am fascinated by the concept of fuzzing. It fits well with my desire to test weird code paths by using more of computer's time and less that of a programmer. What is fuzzing ? It's a type of automated testing, especially good with finding edge case ... read more →
Sometimes you just have a bunch of example data laying around and you want to make sure your code works with all of them. Some of them are probably short and sweet and could live happily as doctests, which are amazing btw. But some of them are more a ... read more →
Use verbs as test module names Who said that the test module needs to be named test ? Experiment with different module names, pay attention to how the test runner displays the results. A structure that I like, an example: worker.rs: // some productio ... read more →
Rust: controlling side effects from the test. Hello and welcome to the newest episode on testing in Rust. Imagine you want to write a timestamping repository of some sorts, that will associate the timestamp of when the storage operation was invoked w ... read more →
As I've been running several intro to Rust sessions throughout the last year, I've assembled a set of resources that help people ease into the language. Depending on your learning style you might like: Rustlings - This is a good set of starter exerc ... read more →
Why ? Rust has such a wonderful community and I want to give back as much as I can. I am not an expert in Rust but I am not a beginner either. In addition to that I love pair programming ! The result is always much better than I could produce myself. ... read more →
Completion and highlighting While on Linux VSCode with the Rust plugin seems to work more or less out of the box, on a Mac I needed to spend some time configuring it. First things first though, let's start by installing Rust version manager, rustup. ... read more →