Book Image

Mastering ABP Framework

By : Halil İbrahim Kalkan
Book Image

Mastering ABP Framework

By: Halil İbrahim Kalkan

Overview of this book

ABP Framework is a complete infrastructure for creating modern web applications by following software development best practices and conventions. With ABP's high-level framework and ecosystem, you can implement the Don’t Repeat Yourself (DRY) principle and focus on your business code. Written by the creator of ABP Framework, this book will help you to gain a complete understanding of the framework and modern web application development techniques. With step-by-step explanations of essential concepts and practical examples, you'll understand the requirements of a modern web solution and how ABP Framework makes it enjoyable to develop your own solutions. You'll discover the common requirements of enterprise web application development and explore the infrastructure provided by ABP. Throughout the book, you’ll get to grips with software development best practices for building maintainable and modular web solutions. By the end of this book, you'll be able to create a complete web solution that is easy to develop, maintain, and test.
Table of Contents (24 chapters)
1
Part 1: Introduction
6
Part 2: Fundamentals of ABP Framework
11
Part 3: Implementing Domain–Driven Design
15
Part 4: User Interface and API Development
19
Part 5: Miscellaneous

Building unit tests

In this section, we will see different types of unit tests. We will begin by testing a static class, then we will write tests for a class with no dependencies. We will continue with a class with dependent services and learn how to mock these dependencies to unit test that class. We will learn the basics of writing automated test code with examples.

Let's begin with the simplest case—testing static classes.

Testing static classes

A static class with no state and external dependencies is the easiest class to test. EventUrlHelper is a static class (in the EventHub.Domain project of the EventHub solution) and is used to convert an event's title to a proper URL part. The following test class (in the EventHub.Domain.Tests project of the EventHub solution) tests the EventUrlHelper class:

public class EventUrlHelper_Tests
{
    [Fact]
    public void Should_Convert_Title_To_Proper_Urls()
  &...