Exemple #1
0
        public async Task GlobalEventsGetEndpoint_ShouldNotReturnEventsFromDatabaseDueToDateQueryParam(string url)
        {
            // Arrange
            var client = GetFactory().CreateClient();

            using var scope = GetFactory().Server.Host.Services.CreateScope();
            var context = scope.ServiceProvider.GetRequiredService <ApplicationDbContext>();

            await context.Events.AddAsync(EventFixtures.SomeEvent().Build());

            await context.Events.AddAsync(EventFixtures.SomeEvent().Build());

            await context.SaveChangesAsync();

            // Act
            var response = await client.GetAsync(url);

            var responseContent = await response.Content.ReadAsStringAsync();

            var events = JsonConvert.DeserializeObject <List <EventResponse> >(responseContent);

            // Assert
            response.EnsureSuccessStatusCode();
            Assert.Equal("application/json; charset=utf-8", response.Content.Headers.ContentType.ToString());
            Assert.Empty(events);
        }
Exemple #2
0
        public async Task PrivateEventsPostEndpoint_ShouldCreatePersonalEvent(string url)
        {
            // Arrange
            var client        = GetFactory(false, true).CreateClient();
            var requestObject = EventFixtures.SomeEventRequest().Global(false).Build();
            var json          = JsonConvert.SerializeObject(requestObject);
            var content       = new StringContent(json, Encoding.UTF8, "application/json");

            // Act
            var response = await client.PostAsync(url, content);

            var responseContent = await response.Content.ReadAsStringAsync();

            var responseObject = JsonConvert.DeserializeObject <EventResponse>(responseContent);

            // Assert
            response.EnsureSuccessStatusCode();
            Assert.Equal("application/json; charset=utf-8", response.Content.Headers.ContentType.ToString());
            Assert.NotEqual(responseObject.Id, Guid.Empty);
            Assert.False(responseObject.Global);
            Assert.Equal(responseObject.Title, requestObject.Title);
            Assert.Empty(responseObject.Notifications);

            using var scope = GetFactory().Server.Host.Services.CreateScope();
            var context = scope.ServiceProvider.GetRequiredService <ApplicationDbContext>();

            Assert.Equal(1, context.Events.Count());
        }
Exemple #3
0
        public async Task GlobalEventsGetEndpoint_ShouldReturnBothEventsFromDatabase(string url)
        {
            // Arrange
            var client = GetFactory().CreateClient();

            using var scope = GetFactory().Server.Host.Services.CreateScope();
            var context = scope.ServiceProvider.GetRequiredService <ApplicationDbContext>();

            var firstDate  = new DateTime(2020, 11, 15);
            var secondDate = new DateTime(2020, 11, 16);

            await context.Events.AddAsync(EventFixtures.SomeEvent().Title("First event").Date(firstDate).Build());

            await context.Events.AddAsync(EventFixtures.SomeEvent().Title("Second event").Date(secondDate).Build());

            await context.SaveChangesAsync();

            // Act
            var response = await client.GetAsync(url);

            var responseContent = await response.Content.ReadAsStringAsync();

            var events = JsonConvert.DeserializeObject <List <EventResponse> >(responseContent);

            // Assert
            response.EnsureSuccessStatusCode();
            Assert.Equal("application/json; charset=utf-8", response.Content.Headers.ContentType.ToString());

            Assert.Equal(2, events.Count);

            var firstEvent  = events.SingleOrDefault(eventResponse => eventResponse.Title.Equals("First event"));
            var secondEvent = events.SingleOrDefault(eventResponse => eventResponse.Title.Equals("Second event"));

            Assert.NotNull(firstEvent);
            Assert.NotNull(secondEvent);

            Assert.Equal(firstDate, firstEvent.Date);
            Assert.Equal(secondDate, secondEvent.Date);
        }