Unit Testing complex validations (study)
Some validations are complex. Let’s explore how .NET data annotation validation and FluentValidation can be combined and (unit) tested.
Read the article Unit Testing complex validations (study)Some validations are complex. Let’s explore how .NET data annotation validation and FluentValidation can be combined and (unit) tested.
Read the article Unit Testing complex validations (study)Ever since I wrote the blog “Is One Of” and “Is Not One Of” validation attributes, I’ve wondered if there is anything better for class validation. I mean: validating individual properties is fine, but usually the more interesting stuff is the validation of a combination of members.
Read the article Let’s combine Data Annotation Validation with FluentValidationWhat I love a about data annotations and validation attributes, is that the validation rules are defined very close to the class: when you open it up, you can view all the rules. The ApiController will even automatically do model validation. This is great, but I like some defense it depth; I want to be able to use those validations in my business service as well. I should not have to trust input. Let’s explore how we can make that happen.
Read the article Data Annotation validation with dependency injection in a business serviceAfter implementing Kiota clients with resilience, I felt the need to spend some time on unit testing them. The Kiota docs on unit testing uses NSubstitute to override the response of the adapter. After some testing (pun intended), I did not feel satisfied with the results; we should be able to use the “normal” way of testing an HttpClient, right? In this blog, I’ll show how to use the RichardSzalay.MockHttp package together with Kiota.
Read the article Kiota Client Unit Testing: mocking dataMy new years resolution is to generate HTTP clients for services with an Open API spec. Microsoft released Kiota, a tool that generates C# classes from specs. In this blog, I’ll be looking at dependency injection and resilience.
Read the article Kiota, dependency injection and resilienceI was working on a project that needed to call multiple webservices, so I wanted to add resilience. Luckily, Microsoft has created a HTTP Resilience package as a wrapper for Polly, adding sensible defaults. In this blog I’ll explore how easy it is to add the new package to our services, including deferring to configuration.
Read the article Implementing HTTP Resilience by MicrosoftLooks like my organization (accidentally) wants to manage my background picture. If you are an admin, you might be able to (temporarily) override the wallpaper, by editing your registry and restarting the explorer process. If you can, you can automate it using PowerShell.
Read the article How to bypass company wallpaper as local admin on Windows 11Here are some script to locally debug your JWT token using Bash or PowerShell. I just need to know if the token is expired or not.
Read the article Debug a JWT token expiration locally with bash or PowerShellLet’s add JWT tokens to protect our API endpoints. Connecting services will supply their public keys, so we can validate their JWT tokens. We’ll use a configuration file to map tokens to local policies to restrict access to certain endpoints.
Read the article Simple JWT Access Policies for API security in .NETI’ve decided to upgrade the hubot-command-mapper and the bot-zero projects to ESM, just like Hubot 11. This blog will focus on how to upgrade the unit tests. In that sense it is a short rewrite of Hubot testing revisited.
Read the article Hubot Testing Revisted (Again): Hubot 11