fix(source): admit ordinary schema eight with current roundtrip coverage

This commit is contained in:
2026-09-24 20:31:39 -07:00
parent edf096cd33
commit 33b86a4d6b
4 changed files with 401 additions and 6 deletions
+5 -2
View File
@@ -1036,16 +1036,19 @@ fn source7_source_bundle_migration_is_token_only_and_new_link_stays_with_caller(
let f = chain(Layer::Oa);
let mut bundle = source_project::format_bundle(&f.p);
let entry = bundle.files.get_mut(&bundle.entry).unwrap();
assert!(entry.starts_with("arcadia 8;"));
*entry = entry
.replacen("arcadia 7;", "arcadia // preserve this header\r\n 6;", 1)
.replacen("arcadia 8;", "arcadia // preserve this header\r\n 6;", 1)
.replace('\n', "\r\n");
assert!(entry.starts_with("arcadia // preserve this header"));
assert_eq!(entry.matches(" 6;").count(), 1);
let old = bundle.clone();
let compiled = source_project::compile_bundle(&bundle, Default::default()).unwrap();
assert_eq!(compiled.decoded.project, f.p);
assert_eq!(compiled.decoded.migration.as_ref().unwrap().from_schema, 6);
for (path, source) in &old.files {
let expected = if path == &old.entry {
source.replacen(" 6;", " 7;", 1)
source.replacen(" 6;", " 8;", 1)
} else {
source.clone()
};