Development

Blog posts in the 'Development' category

Adding additional colour themes to Jetbrains Rider

Jul 6 17

color-themes.com according to it’s description, offers “Color themes for IntelliJ IDEA, Webstorm, PyCharm, RubyMine, PhpStorm and AppCode”

However, it turns out that these themes also work with Rider.

After downloading it (it’s a .jar file) go to File > Import Settings

Choose the downloaded .jar file, and it will import the colour theme.
Once Rider restarts, the theme will be available, and your editor will have switched to that theme

Important:

Unlike Visual Studio, there’s actually two places the colours are configured.
One, is Appearance > Theme:

This governs how the application looks (not how your fonts look)
Light, or Dark (Darcula)

To change the font colours / style, you’ll need to go to Editor > Colors & Fonts > Font
You can then select the Scheme

Notice ‘Solarized Dark’ is now in that list

My preference, however, is the Visual Studio Dark theme (coming from a Windows VS background!)

An Introduction to the LEDS Stack

Jun 10 17

Full blog post is coming soon.

For now, please see GitHub repository for demo project:
https://github.com/alexjamesbrown/LEDS_Stack

Talk slides at:
http://bit.ly/leds_stack_slides

Azure function not receiving json messages using Topic Service Bus Trigger

May 25 17

While developing an Azure Function application, using this tutorial, I encountered a problem.

Ultimately, using func new generated my function (the run.csx file) which looked like this:

Side note: the mySbMsg is important – it’s defined in the function.json bindings, and must match.
function.json

However, there was a problem.
When sending messages to my topic, they weren’t being picked up by my function.

I was using some very simplistic code to send messages to my topic:

The messages were definitely being delievered to the topic – I could see that in the Azure portal.

However, the function wasn’t picking them up.

The issue was around the string mySbMsg parameter.
The scaffolding assumed that it would be a string – but it is in fact, a byte[] (due to me serializing the JSON)

Changing this parameter to be a byte[] – and my messages are now received by my locally running function.

Asserting multiple properties of argument with FakeItEasy

May 4 17

More often than not, I want to assert that my dependency has been called with a parameter that matches more than one condition.

Let’s say we have a method that calls ICustomerService.Add method.
We want to assert the Add method was called with a Customer that matches a few conditions.

The way we’d typically achieve this is by doing something like this:

This will work. And it will indeed assert that the AddCustomer method was called with a Customer object, with those properties set to the corresponding values.

The problem lies if one of those properties doesn’t match.
We get a failed test. But no idication of which property it’s failed on.

What I like to do instead, is follow this pattern:

So, here, we’re basically saying when Add is called, with any Customer object, Invoke the anonymous function, that takes the Customer argument, and stores it in addedCustomer.

We can then individually assert on each property.

Note
I created an issue on GitHub which addresses this, with a view to finding a more ‘inline’ solution

Physical 419 Letter Received

Apr 25 17

Last night I opened an innocuous looking letter delivered to my home address.

It had a ‘commercial’ postage stamp on it (not one that you’d pick up in the post office) and it wasn’t addressed to anybody on the envelope.
The content of the letter was what I’d expect to get via email – a 419 scam!
It was, however, addressed to the previous occupier of the house. They even knew her husbands name.

physical_419

Email address listed: [email protected]