Use detachable IModels to prevent stale data
This commit is contained in:
parent
7e79e0c5d0
commit
cee39cbf78
view/src
main/java/se/su/dsv/scipro/grading
test/java/se/su/dsv/scipro/grading
@ -171,14 +171,19 @@ public class TemplatePanel extends Panel {
|
|||||||
|
|
||||||
public GradeLimitsContainer(String id, IModel<Project> projectIModel) {
|
public GradeLimitsContainer(String id, IModel<Project> projectIModel) {
|
||||||
super(id, projectIModel);
|
super(id, projectIModel);
|
||||||
List<GradeWithPointRange> list = getGradeWithPointRanges(projectIModel.getObject().getProjectType());
|
IModel<List<GradeWithPointRange>> list = projectIModel.map(project ->
|
||||||
|
getGradeWithPointRanges(project.getProjectType())
|
||||||
|
);
|
||||||
|
|
||||||
add(
|
add(
|
||||||
new ListView<>("gradewithlimits_list", list) {
|
new ListView<>("gradewithlimits_list", list) {
|
||||||
@Override
|
@Override
|
||||||
protected void populateItem(ListItem<GradeWithPointRange> item) {
|
protected void populateItem(ListItem<GradeWithPointRange> item) {
|
||||||
GradeWithPointRange gpr = item.getModelObject();
|
IModel<String> s = item
|
||||||
String s = "[" + gpr.getGrade() + "] " + gpr.getLowerLimit() + " - " + gpr.getUpperLimit();
|
.getModel()
|
||||||
|
.map(
|
||||||
|
gpr -> "[" + gpr.getGrade() + "] " + gpr.getLowerLimit() + " - " + gpr.getUpperLimit()
|
||||||
|
);
|
||||||
item.add(new Label("gradewithlimits", s));
|
item.add(new Label("gradewithlimits", s));
|
||||||
add(item);
|
add(item);
|
||||||
}
|
}
|
||||||
|
@ -81,9 +81,9 @@ public class TemplatePanelTest extends SciProTest {
|
|||||||
project.setStartDate(LocalDate.of(2017, Month.MAY, 29));
|
project.setStartDate(LocalDate.of(2017, Month.MAY, 29));
|
||||||
project.setCredits(credits);
|
project.setCredits(credits);
|
||||||
|
|
||||||
Mockito.when(gradingReportTemplateService.getCurrentTemplate(project.getProjectType())).thenReturn(
|
Mockito.lenient()
|
||||||
new GradingReportTemplate(projectType, LocalDate.of(2024, Month.JANUARY, 1))
|
.when(gradingReportTemplateService.getCurrentTemplate(project.getProjectType()))
|
||||||
);
|
.thenReturn(new GradingReportTemplate(projectType, LocalDate.of(2024, Month.JANUARY, 1)));
|
||||||
|
|
||||||
panel = tester.startComponentInPage(new TemplatePanel("id", Model.of(project)));
|
panel = tester.startComponentInPage(new TemplatePanel("id", Model.of(project)));
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user