/ddd_code_samples_typescript

Sample code for domain-driven design (DDD) in Typescript workshop exercises.

Primary LanguageTypeScript

Sample code for domain-driven design (DDD) workshop exercises in Typescript.

The goal of the coding exercises is to apply targeted refactoring towards a richer domain language and certain tactical domain patterns on a small amount of sample code.

We are going to pretend that we are members of the warranty application team for an extended warranty company, and that this repository contains some representative code for the core business logic handled by this system. You will need to imagine that the rest of the application exists, but is just not included here.

N.b.: This code has a lot of issues. This is deliberate. For example, the majority of the objects are devoid of behavior and there is little documentation. Also, the tests are incomplete, poorly named, duplicated, and intermixed with the production code. Try to accept that we are not going to fix most of the issues. Instead, focus on applying the techniques and patterns taught in the workshop to see the impact they can have.

Installation

Install the project dependencies:

$ npm install

Run Unit Tests

Run unit tests via the command line as follows:

$ npm run build
$ npm test

or

$ npm test -- --watchAll