DevGeekWeek 2014

Those you know me (or read my blog) know that I’m passionate (with a capital P) about software development, clean code and of course unit testing. And I’m happy to be given the opportunity to talk about these topics as part of The DevGeekWeek 2014 conference. The DevGeekWeek is a week of all things software … Continue reading DevGeekWeek 2014

Things I learnt reading C# specifications (2)

The story so far: After reading Jon Skeet’s excellent C# in Depth - again I’ve decide to try and actually read the C# language specification…You can read about in a previous post of mine:Things I learnt reading C# specifications (#1)And so as I continue to read the C# specifications along with the excellent comments by … Continue reading Things I learnt reading C# specifications (2)

What to do when FakeItEasy throws System.BadImageException

Today I had a weird problem at work. I’ve been working with a new team and they’ve been writing unit tests using FakeItEasy when they got a strange error message:System.BadImageFormatException: … The signature is incorrect.Now I’ve been using FakeItEasy for some time and I never once saw this strange behavior. Googling for the problem only … Continue reading What to do when FakeItEasy throws System.BadImageException

Faking a long running asynchronous call

A few days ago I needed to make sure that a specific method would only get called once no matter how many times it’s caller is invoked. The simplified code looked something like this:public async Task CallLongOperation(){ var result = await _client.LongWebCall(); if (result.Failed) { // log failure and exit } }I needed to make … Continue reading Faking a long running asynchronous call

One assert to rule them all

What’s wrong with Assert.XQuick – what is the different between the following two lines:Assert.IsTrue(result == expected);Assert.AreEqual(expected, result);Essentially both Asserts check for the same condition, in practice once fail we get very different error messages:While this example is easy to understand – when facing less than trivial test it can be downright impossible to understand the … Continue reading One assert to rule them all