Repousser un projet en bloc, sauf ce dont on ne décide pas
Glisser la barre résumé décale toutes les phases du même nombre de jours, écarts conservés : un projet engagé glisse souvent, et le faire phase par phase les déformait. Restent en place ce qui est terminé — on ne réécrit pas le passé — et les phases à date imposée, nouveau booléen `fixed` pour ce qui est délégué ou tenu du dehors. D'où le format en version 6 : sans l'incrément, un binaire antérieur effacerait ces dates imposées à la première sauvegarde. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -73,9 +73,9 @@ func TestGetSansFichierRenvoiePlanningVide(t *testing.T) {
|
||||
if err := json.Unmarshal(rec.Body.Bytes(), &planning); err != nil {
|
||||
t.Fatalf("réponse illisible : %v", err)
|
||||
}
|
||||
// Le format courant est la version 4 (js/model.js, VERSION_FORMAT).
|
||||
if planning.Version != 4 {
|
||||
t.Errorf("version = %d, attendu 4", planning.Version)
|
||||
// Le format courant est la version 6 (js/model.js, VERSION_FORMAT).
|
||||
if planning.Version != 6 {
|
||||
t.Errorf("version = %d, attendu 6", planning.Version)
|
||||
}
|
||||
if len(planning.Projects) != 0 {
|
||||
t.Errorf("projects = %v, attendu vide", planning.Projects)
|
||||
|
||||
Reference in New Issue
Block a user