Testing in isolation

  • Post comments:14 Comments
  • Reading time:40 mins read

An AL developer gets fired from his job for writing inefficient tests. With his LinkedIn profile proudly showing off his extensive testing experience, a car manufacturer hires him to test cars. His first assignment: test the oil lamp. So he imagines a test, applying his vast experience:

// [GIVEN] A car
// [GIVEN] Enough fuel
// [GIVEN] Engine oil within operational limits
// [GIVEN] Engine runs long enough

// [WHEN] Oil level drops below operational minimum

// [THEN] The oil lamp turns on

Spoiler alert: the guy’s gonna get fired again.


Continue ReadingTesting in isolation

Directions EMEA 2023 demo – decoupling base app

  • Post comments:28 Comments
  • Reading time:40 mins read

Here we go. As promised, I’ll start with the demo I delivered at my “Mythbusting code coverage” session at Directions EMEA 2023 in Lyon.

Over the course of this year, I have talked about testability at 12 sessions at 7 events, 6 public one-day and two-day workshops, and 4 private direct-to-partner one-day workshops. At all those sessions and workshops, almost all of my demos are “made up”: they are code examples written by me to illustrate the concept I talk about in an easy-to-follow way. I think they work quite well to show you what my goal is and what and how I am doing what I am doing.

And yet, I have faced criticism that goes along the lines of “all nice, but this is oversimplified fake examples, and it’s easy to create those examples for just about any concept you want; why don’t you do it on a real-life example, it’s probably not going to be possible.”

Well, I disagree, and that’s why for this event I have decided to add one more example to my example suite, and show how you can apply all the concepts I talk about to a piece of existing base app code, all while not breaking anything and not having to change any other area of the code that depends on that refactored code. Here you can find that example, explained step by step.


Continue ReadingDirections EMEA 2023 demo – decoupling base app

AL Pragma Explorer – a new AL extension

  • Post comments:3 Comments
  • Reading time:3 mins read

There is a cool new extension out there for AL developers that you should really check out: AL Pragma Explorer. The extension is almost as amazing as the work behind it, because even though this extension is published under my publisher name, it’s not really just mine. This was a team effort of my group at the BC TechDays 2022 preconference workshop, and I am so proud that we actually managed to pull this thing off.

So, here’s the story.


Continue ReadingAL Pragma Explorer – a new AL extension