fix(satellites): reject TLE pairs with mismatched catalog numbers (#906, #936)

This commit is contained in:
VG31OP committed 2026-10-13 16:57:55 +05:30
1 parent 8b8ccc9a81
commit 003b92f64a
3 files changed
+32 -7

No files matched your search

+17
View File
@@ -51,6 +51,23 @@ for (const missingLine of [1, 2]) {
});
}
test('TLE parsing rejects pairs with mismatched catalog numbers and resumes', () => {
const text = `SAT A
1 25544U 98067A 24001.50000000 .00016717 00000-0 30270-3 0 9994
2 48274 41.4697 175.8913 0005643 312.8370 141.6893 15.61287398150000
SAT B
1 48274U 21035A 24001.50000000 .00020137 00000-0 24481-3 0 9993
2 48274 41.4697 175.8913 0005643 312.8370 141.6893 15.61287398150000
`;
const entries = parseTleText(text);
assert.deepEqual(
entries.map((entry) => entry.name),
['SAT B'],
);
assert.equal(tleCatalogNumber(entries[0].line1), 48274);
assert.equal(tleCatalogNumber(entries[0].line2), 48274);
});
test('the next pass defaults to the ISS and reports times, peak and direction', async () => {
const catalog = composeCatalog({
tools: coreTools,