steps/<key>.felhom.yml: gate rule 4b, writer, backfill (8) (R-664)
gates / gates (push) Successful in 2s
gates / gates (push) Successful in 2s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
@@ -437,16 +437,23 @@ def test_record_cases(clone):
|
||||
two = ladder_of(tr_entry({"navidrome": prev}, mid, {"navidrome": TR_D1}),
|
||||
tr_entry(mid, frm, {"navidrome": TR_D1}))
|
||||
step_rel = "templates/navidrome/" + _l.step_file(mid)
|
||||
meta_rel = "templates/navidrome/" + _l.step_meta_file(mid)
|
||||
meta_body = lambda t: _l.strip_ladder_block(io.open(os.path.join(clone, NF), encoding="utf-8").read())
|
||||
step_body = lambda t: swap_image("navidrome", old, mid["navidrome"])(io.open(os.path.join(clone, NC), encoding="utf-8").read())
|
||||
case_tr_static("FACT: a two-step ladder with NO steps/ file for the first step", clone,
|
||||
[(NF, two)], 1, ("has no definition",))
|
||||
case_tr_static("GENUINE: a two-step ladder whose first step carries its definition", clone,
|
||||
[(NF, two), (step_rel, step_body)], 0)
|
||||
[(NF, two), (step_rel, step_body), (meta_rel, meta_body)], 0)
|
||||
case_tr_static("DECOY: the steps/ file has the right NAME and names the head's image", clone,
|
||||
[(NF, two), (step_rel, lambda t: io.open(os.path.join(clone, NC), encoding="utf-8").read())],
|
||||
[(NF, two), (step_rel, lambda t: io.open(os.path.join(clone, NC), encoding="utf-8").read()), (meta_rel, meta_body)],
|
||||
1, ("names",))
|
||||
case_tr_static("DECOY: the step's definition sits beside the template under another name", clone,
|
||||
[(NF, two), ("templates/navidrome/steps/0.2.0.yml", step_body)], 1, ("has no definition",))
|
||||
# R-664: the step's own .felhom.yml
|
||||
case_tr_static("FACT: the step has its compose but no .felhom.yml", clone,
|
||||
[(NF, two), (step_rel, step_body)], 1, ("R-664",))
|
||||
case_tr_static("DECOY: the step's .felhom.yml exists by NAME and holds no healthcheck", clone,
|
||||
[(NF, two), (step_rel, step_body), (meta_rel, lambda t: "display_name: Navidrome\n")], 1, ("not a real step file",))
|
||||
|
||||
def main():
|
||||
gate = os.path.join(ROOT, "scripts", "check-engine-major.py")
|
||||
|
||||
Reference in New Issue
Block a user