|
1 | 1 | package aero.t2s.modes.decoder.df;
|
2 | 2 |
|
3 | 3 | import aero.t2s.modes.BinaryHelper;
|
4 |
| -import aero.t2s.modes.constants.SelectedAltitudeSource; |
| 4 | +import aero.t2s.modes.constants.*; |
5 | 5 | import aero.t2s.modes.database.ModeSDatabase;
|
6 | 6 | import aero.t2s.modes.decoder.Decoder;
|
7 | 7 | import aero.t2s.modes.decoder.UnknownDownlinkFormatException;
|
@@ -339,6 +339,32 @@ public void test_df20_bds50_48418A() throws UnknownDownlinkFormatException {
|
339 | 339 | assertEquals(354, bds.getTrueTrack(), 0.1);
|
340 | 340 | }
|
341 | 341 |
|
| 342 | + @Test |
| 343 | + public void test_df16_bds50_48418A() throws UnknownDownlinkFormatException { |
| 344 | + DownlinkFormat df = testMessage("80C18819584195384EF8505941FD"); |
| 345 | + |
| 346 | + assertInstanceOf(DF16.class, df); |
| 347 | + DF16 df16 = (DF16) df; |
| 348 | + assertEquals("02A198", df.getIcao()); // Military / corrupt transponder |
| 349 | + assertEquals(12025, df16.getAltitude().getAltitude()); |
| 350 | + |
| 351 | + assertEquals(VerticalStatus.AIRBORNE, df16.getVerticalStatus()); |
| 352 | + assertEquals(AcasSensitivity.LEVEL6, df16.getSensitivity()); |
| 353 | + assertEquals(AcasReplyInformation.ACAS_RA_VERTICAL_ONLY, df16.getReplyInformation()); |
| 354 | + assertFalse(df16.getResolutionAdvisory().isActive()); |
| 355 | + assertFalse(df16.getResolutionAdvisory().isRequiresCorrectionUpwards()); |
| 356 | + assertFalse(df16.getResolutionAdvisory().isRequiresCorrectionDownwards()); |
| 357 | + assertFalse(df16.getResolutionAdvisory().isRequiresPositiveClimb()); |
| 358 | + assertFalse(df16.getResolutionAdvisory().isRequiresPositiveDescend()); |
| 359 | + assertFalse(df16.getResolutionAdvisory().isRequiresCrossing()); |
| 360 | + assertFalse(df16.getResolutionAdvisory().isSenseReversal()); |
| 361 | + |
| 362 | + assertFalse(df16.isMultipleThreats()); |
| 363 | + assertFalse(df16.isRANotPassAbove()); |
| 364 | + assertFalse(df16.isRANotPassBelow()); |
| 365 | + assertFalse(df16.isRANotTurnLeft()); |
| 366 | + assertFalse(df16.isRANotTurnRight()); |
| 367 | + } |
342 | 368 |
|
343 | 369 | private DownlinkFormat testMessage(String message) throws UnknownDownlinkFormatException {
|
344 | 370 | Decoder decoder = new Decoder(new HashMap<>(), 50, 2, ModeSDatabase.createDatabase());
|
|
0 commit comments