TestMethod для проверки успешного добавления объекта в таблицу - PullRequest
0 голосов
/ 12 декабря 2018

Пока у меня есть это:

 using (var actContext = new ItsAllAboutTheGameDbContext(contextOptions))
        {
            var cardService = new CardService(actContext);
            creditCardResult = await cardService.AddCard("3242423532532434", "332", DateTime.Parse("02.03.2020"), user);
            actContext.CreditCards.Add(creditCardResult);
            await actContext.SaveChangesAsync();


        }

        //Assert

После того, как я добавил карту в таблицу CreditCards в контексте, как я могу утверждать, что она была добавлена ​​успешно?И мне нужно проверить, добавлен ли он в базу данных inmemorydact (actContext)?

1 Ответ

0 голосов
/ 13 декабря 2018

Вы действительно хотите утверждать, что данные были вставлены в таблицу?

Вы должны добавить фабрику DBContext в свой контроллер и использовать поддельную в своих модульных тестах.

public class MyController: Controller {public MyController (Func dbContextFactory) ...

...

    using (var actContext = dbContextFactory())

}

Затем в своем тесте вы просто вводитефабрика для проверки контекста.

Еще лучше, добавить компонент в ваш контроллер.

В противном случае вам придется запросить у базы данных se, если данные там есть.

...