Skip to content

Latest commit

 

History

History
66 lines (56 loc) · 3.46 KB

README.md

File metadata and controls

66 lines (56 loc) · 3.46 KB

AppBrix

Build GitHub Issues Code Size Repo Size NuGet Package NuGet Downloads

AppBrix is a way of thinking about and building scalable modular applications.

This framework is using the latest version of .NET.

AppBrix has been created with the following priorities:

  • Everything should be testable.
  • Interfaces should be easy to understand and use.
  • Every part of the framework should be easily replaceable without changing the original source code.

Setup

# Clone project locally.
git clone git@github.com:MarinAtanasov/AppBrix.git
# Go to project root directory.
cd AppBrix
# Restore nuget dependencies and build the solution.
dotnet build

Run Tests

By default, tests are using MSTest, but NUnit and Xunit can be used instead.

  • Using Visual Studio, Test Explorer must be opened before building test projects in order to discover the tests.
  • Using JetBrains Rider, they can be run with right click on Tests solution folder and selecting Run Unit Tests.
  • Using dotnet test, while in the project's root folder:
dotnet test --filter "Category=Functional|TestCategory=Functional" --nologo --verbosity minimal
  • Using PowerShell, while in the project's root folder:
# You can add -Build to restore dependencies and build the solution.
# You can add -Release to use the Release configuration instead of Debug.
# Run functional tests (default). Add -Parallel for parallel execution.
./Test.ps1 -tests Functional  # ./Test.ps1
# Run performance tests.
./Test.ps1 -tests Performance  # ./Test.ps1 p
# Run all tests.
./Test.ps1 -tests All  # ./Test.ps1 a

Switch Test Runners

There are ready configuration for each test runner inside /Tests/Directory.Build.props.

If you wish to switch to a different runner, open the file and:

  1. Comment out the ItemGroup for the current provider.
  2. Uncomment the ItemGroup for the desired provider.
  3. Rebuild the solution. If the rebuild isn't enough, run ./Clean.ps1 and then rebuild.

Publish Packages

Packaging and publishing of a new version of all projects can be done using PowerShell. It requires Nuget CLI to be set up locally with account API key.

./Publish.ps1

Sample Applications

AppBrix.ConsoleApp is a simple console application which uses the framework.

AppBrix.WebApp is a simple web application which uses the framework.