شماره تماس 09336863931 | 09178169907 پست الکترونیک provid.ir@gmail.com

آموزش عملی و پروژه محور Domain Driven Design و CQRS #7

آموزش عملی و پروژه محور Domain Driven Design و CQRS #7 را در این قسمت از وبسایت آموزش برنامه نویسی پرووید دانلود کنید.

نوشتن اولین تست

قبل از اینکه بتوانیم تست ها را بنویسیم باید کلاسی را برای Aggregate خود تعریف کنیم. در ادامه تعریف کلاس TabAggregate را مشاهده می کنید.

public class TabAggregate : Aggregate
{
}

همانطور که میبینید این کلاس از کلاس Aggregate ارثدبری کرده است. کلاس Aggregate در بردارنده یک Id و مقداری کد در رابطه با Event های مربوط به Aggregate می باشد. در این لحظه می توانیم اولین Test Class خود را ساخته و اولین تست خود را در درون آن قرار بدهیم.

[TestFixture]
public class TabTests  : BDDTest<TabAggregate>
{
    private Guid testId;
    private int testTable;
    private string testWaiter;

    [SetUp]
    public void Setup()
    {
        testId = Guid.NewGuid();
        testTable = 42;
        testWaiter = "Derek";
    }

    [Test]
    public void CanOpenANewTab()
    {
        Test(
            Given(),
            When(new OpenTab
            {
                Id = testId,
                TableNumber = testTable,
                Waiter = testWaiter
            }),
            Then(new TabOpened
            {
                Id = testId,
                TableNumber = testTable,
                Waiter = testWaiter
            }));
    }
}

تستی که در قسمت بالا قرار داده شده است می گوید که به شرطی که تاریخچه ‌ی Event ی برای یک تب وجود نداشته باشد زمانی که کامند OpenTab صادر شد ما انتظار داریم که TabOpened تولید شود.

بسته ی آموزش کاربردی طراحی نرم افزار Domain Driven Design

از شما دعوت می کنیم از بسته ی آموزش کاربردی طراحی نرم افزار Domain Driven Design دیدن کنید.

بسته ی آموزش اصول طراحی نرم افزار Domain Driven Design

از شما دعوت می کنیم از بسته ی آموزش اصول طراحی نرم افزار Domain Driven Design دیدن کنید.

در حال حاضر Solution ما حاوی مواردی است که در تصویر زیر مشاهده می کنید:

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *