public Task StartAsync(CancellationToken stoppingToken) { _logger.LogInformation($"{nameof(ApcAccessBackgroundService)} running."); _timer = new Timer(DoWork, null, TimeSpan.Zero, TimeSpan.FromSeconds(5)); _deserializer = new ColonKeyValueDeserializer(); _apcAccessCommand = new ApcAccessCommand(); return(Task.CompletedTask); }
public void ColonKeyValueDeserializerTestModelClass() { var text = @" APC : 001,036,0882 DATE : 2020-05-28 20:51:42 -0500 HOSTNAME : raspberrypi VERSION : 3.14.14 (31 May 2016) debian UPSNAME : raspberrypi CABLE : USB Cable DRIVER : USB UPS Driver UPSMODE : Stand Alone STARTTIME: 2020-05-27 20:24:40 -0500 MODEL : Back-UPS ES 850G2 STATUS : ONLINE LINEV : 123.0 LOADPCT : 0.0 BCHARGE : 100.0 TIMELEFT : 343.3 MBATTCHG : 5 MINTIMEL : 3 MAXTIME : 0 SENSE : Medium LOTRANS : 92.0 HITRANS : 139.0 ALARMDEL : 30 BATTV : 13.5 LASTXFER : Unacceptable line voltage changes NUMXFERS : 0 TONBATT : 0 CUMONBATT: 0 XOFFBATT : N/A SELFTEST : NO STATFLAG : 0x05000008 SERIALNO : 4B2005P22814 BATTDATE : 2020-01-30 NOMINV : 120 NOMBATTV : 12.0 NOMPOWER : 450 FIRMWARE : 931.a10.D USB FW:a1 END APC : 2020-05-28 20:51:56 -0500"; var apcStatus = new ColonKeyValueDeserializer().Deserialize <ApcStatus>(text); Assert.False(apcStatus.BatteryChargeLevel <= 0); Assert.False(apcStatus.TimeLeft <= 0); Assert.False(String.IsNullOrWhiteSpace(apcStatus.Model)); Assert.False(String.IsNullOrWhiteSpace(apcStatus.Name)); }
public void ColonKeyValueDeserializerTestDict() { var text = @"aAPC : 001,036,0882 DATE : 2020-05-27 20:37:07 -0500 HOSTNAME : raspberrypi VERSION : 3.14.14 (31 May 2016) debian UPSNA ME : raspberrypi CABLE : USB Cable DRIVER : USB UPS Driver UPSMODE : Stand Alone STARTTIME: 2020-05-27 20:24:40 -0500 MODEL :"; var dict = new ColonKeyValueDeserializer().Deserialize(text); Assert.NotNull(dict); Assert.True(dict.Count > 0); }