Integrate artifact locks into publish
This commit is contained in:
@@ -537,16 +537,20 @@ func TestExecuteStagesPublishSkipsRequiredUnselectedConfiguredOutput(t *testing.
|
||||
t.Fatalf("Load manifest error = %v", err)
|
||||
}
|
||||
meta := loadedManifest.Stages["publish"].Metadata
|
||||
skipped, ok := meta["skipped_unselected_outputs"].([]any)
|
||||
if !ok || len(skipped) != 1 {
|
||||
t.Fatalf("skipped_unselected_outputs = %#v, want one item", meta["skipped_unselected_outputs"])
|
||||
}
|
||||
item, ok := skipped[0].(map[string]any)
|
||||
outcomes, ok := meta["publish_output_outcomes"].([]any)
|
||||
if !ok {
|
||||
t.Fatalf("skipped item = %#v, want object", skipped[0])
|
||||
t.Fatalf("publish_output_outcomes = %#v, want array", meta["publish_output_outcomes"])
|
||||
}
|
||||
if item["source"] != "narratio.artifact.session_recap" || item["dest"] != "artifacts/session_recap.md" || item["required"] != true {
|
||||
t.Fatalf("skipped item = %#v, want required session_recap published output", item)
|
||||
var item map[string]any
|
||||
for _, raw := range outcomes {
|
||||
candidate, candidateOK := raw.(map[string]any)
|
||||
if candidateOK && candidate["source"] == "narratio.artifact.session_recap" {
|
||||
item = candidate
|
||||
break
|
||||
}
|
||||
}
|
||||
if item == nil || item["status"] != "unselected" || item["destination"] != "artifacts/session_recap.md" {
|
||||
t.Fatalf("publish output outcome = %#v, want unselected session_recap", item)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user