settingsRepo = app(SettingRepository::class); } /** * Test adding/subtracting a percentage */ public function testMetar1() { $metar = 'KJFK 042151Z 28026G39KT 10SM FEW055 SCT095 BKN110 BKN230 12/M04 A2958 RMK AO2 PK WND 27045/2128 PRESRR SLP018 T01221044'; #$m = new Metar($metar); #$parsed = $m->result; $parsed = Metar::parse($metar); /* Conditions VFR visibility 10NM Barometer 1001.58 Hg / 29.58 MB Clouds FEW @ 5500 ft SCT @ 9500 ft BKN @ 11000 ft BKN @ 23000 ft Wind 26 kts @ 280° gusts to 39 */ $this->assertEquals('KJFK', $parsed['station']); $this->assertEquals('Wed, 04 Apr 2018 21:51:00 +0000', $parsed['observed_date']); $this->assertEquals(4, $parsed['observed_day']); $this->assertEquals('21:51 UTC', $parsed['observed_time']); #$this->assertEquals('3:42 hr. ago', $parsed['observed_age']); $this->assertEquals(13.38, $parsed['wind_speed']); $this->assertEquals(20.06, $parsed['wind_gust_speed']); $this->assertEquals(280, $parsed['wind_direction']); $this->assertEquals('W', $parsed['wind_direction_label']); $this->assertEquals(false, $parsed['wind_direction_varies']); $this->assertEquals(16093, $parsed['visibility']); $this->assertEquals('16093 meters', $parsed['visibility_report']); $this->assertEquals('Dry', $parsed['present_weather_report']); $this->assertCount(4, $parsed['clouds']); $this->assertEquals( 'A few at 1676 meters; scattered at 2896 meters; broken sky at 3353 meters; broken sky at 7010 meters', $parsed['clouds_report']); $this->assertEquals(1676, $parsed['cloud_height']); $this->assertEquals(false, $parsed['cavok']); $this->assertEquals(12, $parsed['temperature']); $this->assertEquals(54, $parsed['temperature_f']); $this->assertEquals(-4, $parsed['dew_point']); $this->assertEquals(25, $parsed['dew_point_f']); $this->assertEquals(33, $parsed['humidity']); $this->assertEquals(29.58, $parsed['barometer']); $this->assertEquals(0.87, $parsed['barometer_in']); $this->assertEquals('AO2 PK WND 27045/2128 PRESRR SLP018 T01221044', $parsed['remarks']); } public function testMetar2() { $metar = 'CYWG 172000Z 30015G25KT 3/4SM R36/4000FT/D -SN ' .'BLSN BKN008 OVC040 M05/M08 A2992 REFZRA WS RWY36 ' .'RMK SF5NS3 SLP134'; } }