Skip to content

Commit

Permalink
Merge pull request getodk#5795 from seadowg/migrate-old-settings
Browse files Browse the repository at this point in the history
Migrate old finalize key correctly
  • Loading branch information
seadowg committed Oct 26, 2023
1 parent accb428 commit c5ca8a8
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -155,30 +155,35 @@ public List<Migration> getProtectedMigrations() {
.withValues(false, false)
.toPairs(
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, true,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, false
"finalize", false
)
.withValues(false, true)
.toPairs(
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, false,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, true
"finalize", true
)
.withValues(false, null)
.toPairs(
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, false,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, true
"finalize", true
),
removeKey("mark_as_finalized"),
removeKey("default_completed"),
updateKeys(ProtectedProjectKeys.ALLOW_OTHER_WAYS_OF_EDITING_FORM)
.withValues(false)
.toPairs(
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, false,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, true
"finalize", true
),
updateKeys("finalize").withValues(false)
.toPairs(
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, false,
ProtectedProjectKeys.KEY_BULK_FINALIZE, false
)
.withValues(true)
.toPairs(
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, true,
ProtectedProjectKeys.KEY_BULK_FINALIZE, true
),
removeKey("finalize")
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -260,7 +260,11 @@ public void when_markAsFinalized_wasDisabled_and_defaultCompleted_wasDisabled_th

runMigrations();

assertSettings(protectedSettings, ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, true, ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, false);
assertSettings(protectedSettings,
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, true,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, false,
ProtectedProjectKeys.KEY_BULK_FINALIZE, false
);

assertThat(protectedSettings.contains("mark_as_finalized"), equalTo(false));
assertThat(protectedSettings.contains("default_completed"), equalTo(false));
Expand All @@ -273,7 +277,11 @@ public void when_markAsFinalized_wasDisabled_and_defaultCompleted_wasEnabled_the

runMigrations();

assertSettings(protectedSettings, ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, false, ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, true);
assertSettings(protectedSettings,
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, false,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, true,
ProtectedProjectKeys.KEY_BULK_FINALIZE, true
);

assertThat(protectedSettings.contains("mark_as_finalized"), equalTo(false));
assertThat(protectedSettings.contains("default_completed"), equalTo(false));
Expand All @@ -285,7 +293,11 @@ public void when_markAsFinalized_wasDisabled_and_defaultCompleted_wasNotSet_then

runMigrations();

assertSettings(protectedSettings, ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, false, ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, true);
assertSettings(protectedSettings,
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, false,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, true,
ProtectedProjectKeys.KEY_BULK_FINALIZE, true
);

assertThat(protectedSettings.contains("mark_as_finalized"), equalTo(false));
assertThat(protectedSettings.contains("default_completed"), equalTo(false));
Expand Down Expand Up @@ -322,7 +334,7 @@ public void when_AllowOtherWaysOfEditingFormIsDisabled_thenSaveAsDraftShouldBeDi
initSettings(protectedSettings,
ProtectedProjectKeys.ALLOW_OTHER_WAYS_OF_EDITING_FORM, false,
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, true,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, false
"finalize", false
);

runMigrations();
Expand All @@ -338,7 +350,7 @@ public void when_AllowOtherWaysOfEditingFormIsEnabled_thenDoNotUpdateSaveAsDraft
initSettings(protectedSettings,
ProtectedProjectKeys.ALLOW_OTHER_WAYS_OF_EDITING_FORM, true,
ProtectedProjectKeys.KEY_SAVE_AS_DRAFT, true,
ProtectedProjectKeys.KEY_FINALIZE_IN_FORM_ENTRY, false
"finalize", false
);

runMigrations();
Expand Down

0 comments on commit c5ca8a8

Please sign in to comment.