public async void TestGetAllCallsignsOnline() { var acarsClient = new AcarsClient( CALLSIGN, LOGON_SECRET, false, GetMockedHttpClient(HttpStatusCode.OK, HOPPIE_CALLSIGNS_ONLINE) ); string[] callsigns = await acarsClient.GetAllCallsignsOnline().ConfigureAwait(false); Assert.NotNull(callsigns); Assert.True(callsigns.Length == 4); Assert.Equal("SAS123", callsigns[0]); }
public async void TestRecieveSingleTelexAcarsMessage() { var acarsClient = new AcarsClient( CALLSIGN, LOGON_SECRET, false, GetMockedHttpClient(HttpStatusCode.OK, ACARS_MESSAGES_SINGLE_TELEX) ); // ACT AcarsMessage[] result = await acarsClient.GetPendingMessages().ConfigureAwait(false); // ASSERT Assert.NotNull(result); Assert.True(result.Length == 1); Assert.Equal("SWSM", result[0].From); Assert.Equal(AcarsClient.MessageType.Telex, result[0].Type); Assert.Equal(CALLSIGN, result[0].To); Assert.Equal("TEST", result[0].Data); }
public async void TestRecieveAcarsMessageServerError() { var acarsClient = new AcarsClient( CALLSIGN, LOGON_SECRET, false, GetMockedHttpClient(HttpStatusCode.InternalServerError, "") ); // ACT try { AcarsMessage[] result = await acarsClient.GetPendingMessages().ConfigureAwait(false); } catch (Exception ex) { // ASSERT Assert.NotNull(ex); Assert.Equal("Error communicating with Hoppie server over HTTP: Response status code does not indicate success: 500 (Internal Server Error).", ex.Message); } }
public async void TestRecieveSingleCpdlcAcarsMessage() { var acarsClient = new AcarsClient( CALLSIGN, LOGON_SECRET, false, GetMockedHttpClient(HttpStatusCode.OK, ACARS_MESSAGES_SINGLE_CPDLC) ); // ACT AcarsMessage[] result = await acarsClient.GetPendingMessages().ConfigureAwait(false); // ASSERT Assert.NotNull(result); Assert.True(result.Length == 1); Assert.Equal("SWSM", result[0].From); Assert.Equal(AcarsClient.MessageType.CPDLC, result[0].Type); Assert.Equal(CALLSIGN, result[0].To); Assert.Equal("/data2/14//R/AT @ELTOK@ EXPECT @300K", result[0].Data); }
public async void TestRecieveMultipleMixedAcarsMessages() { var acarsClient = new AcarsClient( CALLSIGN, LOGON_SECRET, false, GetMockedHttpClient(HttpStatusCode.OK, ACARS_MESSAGES_MULTIPLE_MIXED) ); // ACT AcarsMessage[] result = await acarsClient.GetPendingMessages().ConfigureAwait(false); // ASSERT Assert.NotNull(result); Assert.True(result.Length == 9); Assert.True(result[0].RecievedAt < DateTime.Now); Assert.Equal("SWSM", result[0].From); Assert.Equal(AcarsClient.MessageType.CPDLC, result[0].Type); Assert.Equal(CALLSIGN, result[0].To); Assert.Equal("/data2/14//R/AT @ELTOK@ EXPECT @300K", result[0].Data); Assert.IsType <CpdlcAcarsMessage>(result[4]); CpdlcAcarsMessage cpdlcMessage = (CpdlcAcarsMessage)result[4]; Assert.True(cpdlcMessage.RecievedAt < DateTime.Now); Assert.Equal("SWSM", cpdlcMessage.From); Assert.Equal(AcarsClient.MessageType.CPDLC, cpdlcMessage.Type); Assert.Equal(CALLSIGN, cpdlcMessage.To); Assert.Equal("/data2/10/9/NE/LOGON ACCEPTED", cpdlcMessage.Data); Assert.Equal("LOGON ACCEPTED", cpdlcMessage.Message); Assert.Equal(10, cpdlcMessage.MessageCount); Assert.Equal(CpdlcAcarsMessage.ResponseAttribute.UPLINK_NOT_ENABLED, cpdlcMessage.ResponseType); Assert.True(result[3].RecievedAt < DateTime.Now); Assert.Equal("SWSM", result[3].From); Assert.Equal(AcarsClient.MessageType.Telex, result[3].Type); Assert.Equal(CALLSIGN, result[3].To); Assert.Equal("TEST", result[3].Data); }