Пример #1
0
        public void WhenReminderUpdated_IfItemNotExists_ShouldRaiseException()
        {
            using var factory = new ReminderWebApplicationFactory();
            var id      = Guid.NewGuid();
            var storage = factory.GetClient();

            Assert.CatchAsync <ReminderItemNotFoundException>(() =>
                                                              storage.UpdateAsync(Create.Reminder.WithId(id))
                                                              );
        }
Пример #2
0
        public async Task WhenReminderFind_IfItemExists_ShouldReturnIt()
        {
            using var factory = new ReminderWebApplicationFactory();
            var id      = Guid.NewGuid();
            var storage = factory
                          .WithItems(Create.Reminder.WithId(id))
                          .GetClient();

            var item = await storage.GetAsync(id);

            Assert.AreEqual(id, item.Id);
        }
Пример #3
0
        public async Task WhenReminderUpdated_IfItemExists_ShouldUpdateItem()
        {
            using var factory = new ReminderWebApplicationFactory();
            var id      = Guid.NewGuid();
            var storage = factory
                          .WithItems(Create.Reminder.WithId(id).WithMessage("Initial"))
                          .GetClient();

            await storage.UpdateAsync(Create.Reminder.WithId(id).WithMessage("Updated"));

            var item = await storage.GetAsync(id);

            Assert.AreEqual("Updated", item.Message);
        }
Пример #4
0
        public async Task WhenReminderList_IfDatetimeSpecified_ShouldReturnMatchingItems()
        {
            using var factory = new ReminderWebApplicationFactory();
            var storage = factory
                          .WithItems(
                Create.Reminder.AtDatetime(DateTimeOffset.UtcNow.AddMinutes(-1)),
                Create.Reminder.AtDatetime(DateTimeOffset.UtcNow.AddMinutes(1))
                )
                          .GetClient();

            var items = await storage.FindByAsync(ReminderItemFilter.CreatedAtNow());

            Assert.AreEqual(1, items.Length);
        }
Пример #5
0
        public async Task WhenReminderList_IfStatusSpecified_ShouldReturnMatchingItems()
        {
            using var factory = new ReminderWebApplicationFactory();
            var storage = factory
                          .WithItems(
                Create.Reminder.WithStatus(ReminderItemStatus.Ready),
                Create.Reminder.WithStatus(ReminderItemStatus.Created))
                          .GetClient();

            var items = await storage.FindByAsync(
                ReminderItemFilter.ByStatus(ReminderItemStatus.Ready)
                );

            Assert.AreEqual(1, items.Length);
        }
Пример #6
0
        public async Task WhenReminderCreated_ShouldReturnById()
        {
            using var factory = new ReminderWebApplicationFactory();
            var storage = factory.GetClient();
            var item    = Create.Reminder
                          .WithMessage("Something important")
                          .WithContact("Contact")
                          .Please();

            await storage.AddAsync(item);

            var result = await storage.GetAsync(item.Id);

            Assert.AreEqual(item.Message, result.Message);
            Assert.AreEqual(item.ContactId, result.ContactId);
        }
        public ReminderControllerTest(ReminderWebApplicationFactory <ReminderService.Startup> factory, AuthWebApplicationFactory <AuthenticationService.Startup> authFactory)
        {
            //calling Auth API to get JWT
            User user = new User {
                UserId = "Mukesh", Password = "******"
            };

            _authclient = authFactory.CreateClient();
            HttpRequestMessage request   = new HttpRequestMessage();
            MediaTypeFormatter formatter = new JsonMediaTypeFormatter();

            // The endpoint or route of the controller action.
            var httpResponse = _authclient.PostAsync <User>("/api/auth/login", user, formatter);

            httpResponse.Wait();
            // Deserialize and examine results.
            var stringResponse = httpResponse.Result.Content.ReadAsStringAsync();
            var response       = JsonConvert.DeserializeObject <TokenModel>(stringResponse.Result);

            _client = factory.CreateClient();
            //Attaching token in request header
            _client.DefaultRequestHeaders.Add("Authorization", $"Bearer {response.Token}");
        }
Пример #8
0
 public ReminderControllerTest(ReminderWebApplicationFactory <Startup> factory)
 {
     _client = factory.CreateClient();
 }