-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #936 from Klantinteractie-Servicesysteem/feature/V…
…erplaatsenvanOnderwerpLinks#805 PC-362 verplaatsen van onderwerp links
- Loading branch information
Showing
22 changed files
with
820 additions
and
219 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,9 @@ | ||
using Kiss.Bff.Beheer.Data; | ||
using Kiss.Bff.ZaakGerichtWerken.Contactmomenten; | ||
using Kiss.Bff.Intern.ContactmomentDetails.Features; | ||
using ContactmomentDetails = Kiss.Bff.Intern.ContactmomentDetails.Data.Entities.ContactmomentDetails; | ||
using Microsoft.AspNetCore.Mvc; | ||
using Microsoft.EntityFrameworkCore; | ||
using Microsoft.Extensions.DependencyInjection; | ||
using Kiss.Bff.Intern.ContactmomentDetails.Data.Entities; | ||
|
||
namespace Kiss.Bff.Test | ||
{ | ||
|
@@ -36,7 +37,8 @@ public async Task Post_ValidModel_ReturnsOk() | |
Einddatum = DateTime.Now.AddHours(1), | ||
Gespreksresultaat = "Result 1", | ||
Vraag = "Question 1", | ||
EmailadresKcm = "[email protected]" // User.GetEmail() | ||
EmailadresKcm = "[email protected]", // User.GetEmail() | ||
Bronnen = new[] {new ContactmomentDetailsBronModel { Soort = "Soort", Titel = "Titel", Url = "Url" } } | ||
}; | ||
|
||
// Act | ||
|
@@ -47,9 +49,12 @@ public async Task Post_ValidModel_ReturnsOk() | |
//Assert.AreEqual(200, result.StatusCode); | ||
|
||
// Check if the model is added to the database | ||
var addedModel = await dbContext.ContactMomentDetails.FirstOrDefaultAsync(); | ||
Assert.IsNotNull(addedModel); | ||
Assert.AreEqual(validModel.Id, addedModel.Id); | ||
var addedEntity = await dbContext.ContactMomentDetails.Include(x=> x.Bronnen).FirstOrDefaultAsync(); | ||
var addedBron = addedEntity?.Bronnen.FirstOrDefault(); | ||
Assert.IsNotNull(addedEntity); | ||
Assert.IsNotNull(addedBron); | ||
Assert.AreEqual(validModel.Id, addedEntity.Id); | ||
Assert.AreEqual(validModel.Bronnen.First().Titel, addedBron.Titel); | ||
} | ||
|
||
|
||
|
@@ -58,14 +63,20 @@ public async Task Post_ModelWithExistingId_UpdatesExistingEntity() | |
{ | ||
// Arrange | ||
using var dbContext = new BeheerDbContext(_dbContextOptions); | ||
var existingEntity = new ContactmomentDetailsModel | ||
var existingEntity = new ContactmomentDetails | ||
{ | ||
Id = "1", | ||
Startdatum = DateTime.Now, | ||
Einddatum = DateTime.Now.AddHours(1), | ||
Gespreksresultaat = "Result 1", | ||
Vraag = "Question 1", | ||
EmailadresKcm = "[email protected]" | ||
EmailadresKcm = "[email protected]", | ||
Bronnen = new List<ContactmomentDetailsBron> { new ContactmomentDetailsBron | ||
{ | ||
Titel = "Titel1", | ||
Soort = "Soort1", | ||
Url = "Url1" | ||
} } | ||
}; | ||
dbContext.ContactMomentDetails.Add(existingEntity); | ||
dbContext.SaveChanges(); | ||
|
@@ -78,7 +89,8 @@ public async Task Post_ModelWithExistingId_UpdatesExistingEntity() | |
Einddatum = DateTime.Now.AddHours(1), | ||
Gespreksresultaat = "Result 2", | ||
Vraag = "Question 2", | ||
EmailadresKcm = "[email protected]" | ||
EmailadresKcm = "[email protected]", | ||
Bronnen = new[] {new ContactmomentDetailsBronModel { Soort = "Soort2", Url = "Url2", Titel = "Titel2" } } | ||
}; | ||
|
||
// Act | ||
|
@@ -89,9 +101,12 @@ public async Task Post_ModelWithExistingId_UpdatesExistingEntity() | |
Assert.AreEqual(200, result.StatusCode); | ||
|
||
// Check if the entity was updated in the database | ||
var updatedEntity = await dbContext.ContactMomentDetails.FindAsync(model.Id); | ||
var updatedEntity = await dbContext.ContactMomentDetails.Include(x=> x.Bronnen).FirstOrDefaultAsync(x=> x.Id == model.Id); | ||
var updatedBron = updatedEntity?.Bronnen?.FirstOrDefault(); | ||
Assert.IsNotNull(updatedEntity); | ||
Assert.IsNotNull(updatedBron); | ||
Assert.AreEqual(model.Gespreksresultaat, updatedEntity.Gespreksresultaat); | ||
Assert.AreEqual(model.Bronnen.First().Titel, updatedBron.Titel); | ||
} | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,13 +1,7 @@ | ||
using System.IdentityModel.Tokens.Jwt; | ||
using System.Security.Claims; | ||
using System.Text; | ||
using Kiss.Bff.Beheer.Data; | ||
using Kiss.Bff.ZaakGerichtWerken; | ||
using Kiss.Bff.ZaakGerichtWerken.Contactmomenten; | ||
using Microsoft.AspNetCore.Http; | ||
using Microsoft.AspNetCore.Mvc; | ||
using Microsoft.IdentityModel.Tokens; | ||
using Moq; | ||
|
||
namespace Kiss.Bff.Test | ||
{ | ||
|
@@ -86,51 +80,5 @@ public void GenerateToken_ReturnsValidToken() | |
var principal = tokenHandler.ValidateToken(token, validationParameters, out _); | ||
Assert.IsNotNull(principal); | ||
} | ||
|
||
[TestMethod] | ||
public async Task Post_AddsOrUpdatesContactmomentToDatabase() | ||
{ | ||
// Arrange | ||
var cancellationToken = CancellationToken.None; | ||
var model = new ContactmomentDetailsModel | ||
{ | ||
Id = "1", | ||
Startdatum = DateTimeOffset.Now, | ||
Einddatum = DateTimeOffset.Now.AddDays(1), | ||
Gespreksresultaat = "Success", | ||
Vraag = "Question", | ||
SpecifiekeVraag = "Topic", | ||
EmailadresKcm = "[email protected]" | ||
}; | ||
var dbContextMock = new Mock<BeheerDbContext>(_dbContextOptions) { CallBase = true }; | ||
dbContextMock.Setup(db => db.SaveChangesAsync(cancellationToken)).Returns(Task.FromResult(1)); | ||
|
||
var userClaims = new[] | ||
{ | ||
new Claim(ClaimTypes.Email, "[email protected]") | ||
}; | ||
var user = new ClaimsPrincipal(new ClaimsIdentity(userClaims)); | ||
var controller = new ContactmomentDetailsToevoegen(dbContextMock.Object) | ||
{ | ||
ControllerContext = new ControllerContext | ||
{ | ||
HttpContext = new DefaultHttpContext | ||
{ | ||
User = user | ||
} | ||
} | ||
}; | ||
|
||
|
||
// Act | ||
var result = await controller.Post(model, cancellationToken); | ||
|
||
// Assert | ||
dbContextMock.Verify(db => db.AddAsync(model, cancellationToken), Times.Once); | ||
dbContextMock.Verify(db => db.SaveChangesAsync(cancellationToken), Times.Once); | ||
Assert.IsInstanceOfType(result, typeof(OkResult)); | ||
} | ||
|
||
|
||
} | ||
} |
36 changes: 0 additions & 36 deletions
36
Kiss.Bff/Extern/ZaakGerichtWerken/Contactmomenten/ContactmomentDetailsDetails.cs
This file was deleted.
Oops, something went wrong.
37 changes: 0 additions & 37 deletions
37
Kiss.Bff/Extern/ZaakGerichtWerken/Contactmomenten/ContactmomentDetailsToevoegen.cs
This file was deleted.
Oops, something went wrong.
18 changes: 18 additions & 0 deletions
18
Kiss.Bff/Intern/ContactmomentDetails/Data/Entities/ContactmomentDetails.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
using System.ComponentModel.DataAnnotations; | ||
|
||
namespace Kiss.Bff.Intern.ContactmomentDetails.Data.Entities | ||
{ | ||
public class ContactmomentDetails | ||
{ | ||
public string Id { get; set; } = default!; | ||
public DateTimeOffset Startdatum { get; set; } | ||
public DateTimeOffset Einddatum { get; set; } | ||
public string? Gespreksresultaat { get; set; } | ||
public string? Vraag { get; set; } | ||
public string? SpecifiekeVraag { get; set; } | ||
public string? EmailadresKcm { get; set; } | ||
public string? VerantwoordelijkeAfdeling { get; set; } | ||
|
||
public List<ContactmomentDetailsBron> Bronnen { get; set; } = new(); | ||
} | ||
} |
17 changes: 17 additions & 0 deletions
17
Kiss.Bff/Intern/ContactmomentDetails/Data/Entities/ContactmomentDetailsBron.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
namespace Kiss.Bff.Intern.ContactmomentDetails.Data.Entities | ||
{ | ||
public class ContactmomentDetailsBron | ||
{ | ||
public int Id { get; set; } | ||
|
||
public string ContactmomentDetailsId { get; set; } = default!; | ||
|
||
public string Soort { get; set; } = string.Empty; | ||
|
||
public string Titel { get; set; } = string.Empty; | ||
|
||
public string Url { get; set; } = string.Empty; | ||
|
||
public ContactmomentDetails ContactmomentDetails { get; set; } = null!; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
14 changes: 14 additions & 0 deletions
14
Kiss.Bff/Intern/ContactmomentDetails/Features/ContactmomentDetailsBronModel.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
using System.ComponentModel.DataAnnotations; | ||
|
||
namespace Kiss.Bff.Intern.ContactmomentDetails.Features | ||
{ | ||
public class ContactmomentDetailsBronModel | ||
{ | ||
[Required] | ||
public string Soort { get; set; } = ""; | ||
[Required] | ||
public string Titel { get; set; } = ""; | ||
[Required] | ||
public string Url { get; set; } = ""; | ||
} | ||
} |
Oops, something went wrong.