Esempio n. 1
0
 def test_141215_convkey(self):
     """ CLIACT Get a warning about convert key """
     prod = cliparser(get_file('CLIACT.txt'))
     self.assertEqual(prod.data[0]['data']['snow_today_record_years'][0],
                      1947)
     self.assertEqual(prod.data[0]['data']['snow_today_record_years'][1],
                      1925)
Esempio n. 2
0
 def test_141215_convkey(self):
     """ CLIACT Get a warning about convert key """
     prod = cliparser(get_file('CLIACT.txt'))
     self.assertEqual(prod.data[0]['data']['snow_today_record_years'][0],
                      1947)
     self.assertEqual(prod.data[0]['data']['snow_today_record_years'][1],
                      1925)
Esempio n. 3
0
 def test_141013_tracetweet(self):
     """ CLIDSM2 Make sure we convert trace amounts in tweet to trace! """
     prod = cliparser(get_file('CLIDSM2.txt'))
     j = prod.get_jabbers('http://localhost', 'http://localhost')
     self.assertEquals(j[0][2]['twitter'], (
          'DES MOINES IA Oct 12 Climate: Hi: 56 '
          'Lo: 43 Precip: Trace Snow: 0.0'
          ' http://localhost?pid=201410122226-KDMX-CDUS43-CLIDSM'))
Esempio n. 4
0
 def test_141013_tracetweet(self):
     """ CLIDSM2 Make sure we convert trace amounts in tweet to trace! """
     prod = cliparser(get_file('CLIDSM2.txt'))
     j = prod.get_jabbers('http://localhost', 'http://localhost')
     self.assertEquals(j[0][2]['twitter'], (
          'DES MOINES IA Oct 12 Climate: Hi: 56 '
          'Lo: 43 Precip: Trace Snow: 0.0'
          ' http://localhost?pid=201410122226-KDMX-CDUS43-CLIDSM'))
Esempio n. 5
0
 def test_170315_invalid_dup(self):
     """CLIANC incorrectly has two CLIs"""
     prod = cliparser(get_file('CLIANC.txt'))
     answers = [23, 22, 31, 10, 29, 33]
     for i, answer in enumerate(answers):
         print(i)
         self.assertEqual(prod.data[i]['data']['temperature_maximum'],
                          answer)
Esempio n. 6
0
def test_180208_issue56_tweetmissing():
    """Report None values as missing, not None"""
    prod = cliparser(get_test_file('CLI/CLIFFC.txt'))
    j = prod.get_jabbers('http://localhost', 'http://localhost')
    ans = ('PEACHTREE CITY Oct 3 Climate: Hi: 79 Lo: 67 Precip: 0.87 '
           'Snow: Missing '
           'http://localhost?pid=201410032032-KFFC-CDUS42-CLIFFC')
    assert j[0][2]['twitter'] == ans
Esempio n. 7
0
def test_cli2():
    """ CLIDSM test """
    prod = cliparser(get_test_file('CLI/CLIDSM.txt'))
    assert prod.data[0]['cli_valid'] == datetime.datetime(2013, 8, 1)
    assert prod.data[0]['data']['temperature_maximum'] == 89
    assert prod.data[0]['data']['snow_month'] == 0
    assert prod.data[0]['data']['temperature_minimum_record_years'][0] == 1898
    assert prod.data[0]['data']['snow_today'] == 0
    assert prod.data[0]['data']['precip_jun1'] == 4.25
    assert prod.data[0]['data']['precip_jan1'] == 22.56
Esempio n. 8
0
def test_180208_issue56_tweetmissing():
    """Report None values as missing, not None"""
    prod = cliparser(get_test_file('CLI/CLIFFC.txt'))
    j = prod.get_jabbers('http://localhost', 'http://localhost')
    ans = (
        'PEACHTREE CITY Oct 3 Climate: Hi: 79 Lo: 67 Precip: 0.87 '
        'Snow: Missing '
        'http://localhost?pid=201410032032-KFFC-CDUS42-CLIFFC'
    )
    assert j[0][2]['twitter'] == ans
Esempio n. 9
0
def test_140930_negative_temps():
    """ CLIALO Royal screwup not supporting negative numbers """
    prod = cliparser(get_test_file('CLI/CLIALO.txt'))
    assert prod.data[0]['data'].get('temperature_minimum') == -21
    assert prod.data[0]['data'].get('temperature_minimum_record') == -21
    assert prod.data[0]['data'].get('snow_today') == 0.0
    assert prod.data[0]['data'].get('snow_today_record') == 13.2
    assert prod.data[0]['data'].get('snow_today_last') == 0.0
    assert prod.data[0]['data'].get('snow_month_last') == TRACE_VALUE
    assert prod.data[0]['data'].get('snow_jul1_last') == 11.3
Esempio n. 10
0
def test_140930_negative_temps():
    """ CLIALO Royal screwup not supporting negative numbers """
    prod = cliparser(get_test_file('CLI/CLIALO.txt'))
    assert prod.data[0]['data'].get('temperature_minimum') == -21
    assert prod.data[0]['data'].get('temperature_minimum_record') == -21
    assert prod.data[0]['data'].get('snow_today') == 0.0
    assert prod.data[0]['data'].get('snow_today_record') == 13.2
    assert prod.data[0]['data'].get('snow_today_last') == 0.0
    assert prod.data[0]['data'].get('snow_month_last') == TRACE_VALUE
    assert prod.data[0]['data'].get('snow_jul1_last') == 11.3
Esempio n. 11
0
def test_cli2():
    """ CLIDSM test """
    prod = cliparser(get_test_file('CLI/CLIDSM.txt'))
    assert prod.data[0]['cli_valid'] == datetime.datetime(2013, 8, 1)
    assert prod.data[0]['data']['temperature_maximum'] == 89
    assert prod.data[0]['data']['snow_month'] == 0
    assert prod.data[0]['data']['temperature_minimum_record_years'][0] == 1898
    assert prod.data[0]['data']['snow_today'] == 0
    assert prod.data[0]['data']['precip_jun1'] == 4.25
    assert prod.data[0]['data']['precip_jan1'] == 22.56
Esempio n. 12
0
 def test_140930_negative_temps(self):
     """ CLIALO Royal screwup not supporting negative numbers """
     prod = cliparser(get_file('CLIALO.txt'))
     self.assertEqual(prod.data[0]['data'].get('temperature_minimum'), -21)
     self.assertEqual(
         prod.data[0]['data'].get('temperature_minimum_record'), -21)
     self.assertEqual(prod.data[0]['data'].get('snow_today'), 0.0)
     self.assertEqual(prod.data[0]['data'].get('snow_today_record'), 13.2)
     self.assertEqual(prod.data[0]['data'].get('snow_today_last'), 0.0)
     self.assertEqual(prod.data[0]['data'].get('snow_month_last'), 0.0001)
     self.assertEqual(prod.data[0]['data'].get('snow_jul1_last'), 11.3)
Esempio n. 13
0
 def test_140930_negative_temps(self):
     """ CLIALO Royal screwup not supporting negative numbers """
     prod = cliparser(get_file('CLIALO.txt'))
     self.assertEqual(prod.data[0]['data'].get('temperature_minimum'), -21)
     self.assertEqual(prod.data[0]['data'].get(
                         'temperature_minimum_record'), -21)
     self.assertEqual(prod.data[0]['data'].get('snow_today'), 0.0)
     self.assertEqual(prod.data[0]['data'].get('snow_today_record'), 13.2)
     self.assertEqual(prod.data[0]['data'].get('snow_today_last'), 0.0)
     self.assertEqual(prod.data[0]['data'].get('snow_month_last'), 0.0001)
     self.assertEqual(prod.data[0]['data'].get('snow_jul1_last'), 11.3)
Esempio n. 14
0
 def test_cli2(self):
     """ CLIDSM test """
     prod = cliparser(get_file('CLIDSM.txt'))
     self.assertEqual(prod.data[0]['cli_valid'],
                      datetime.datetime(2013, 8, 1))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'], 89)
     self.assertEqual(prod.data[0]['data']['snow_month'], 0)
     self.assertEqual(
         prod.data[0]['data']['temperature_minimum_record_years'][0], 1898)
     self.assertEqual(prod.data[0]['data']['snow_today'], 0)
     self.assertEqual(prod.data[0]['data']['precip_jun1'], 4.25)
     self.assertEqual(prod.data[0]['data']['precip_jan1'], 22.56)
Esempio n. 15
0
 def test_cli2(self):
     """ CLIDSM test """
     prod = cliparser(get_file('CLIDSM.txt'))
     self.assertEqual(prod.data[0]['cli_valid'],
                      datetime.datetime(2013, 8, 1))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'], 89)
     self.assertEqual(prod.data[0]['data']['snow_month'], 0)
     self.assertEqual(
         prod.data[0]['data']['temperature_minimum_record_years'][0], 1898)
     self.assertEqual(prod.data[0]['data']['snow_today'], 0)
     self.assertEqual(prod.data[0]['data']['precip_jun1'], 4.25)
     self.assertEqual(prod.data[0]['data']['precip_jan1'], 22.56)
Esempio n. 16
0
def test_cli():
    """ CLIJUN Test the processing of a CLI product """
    prod = cliparser(get_test_file('CLI/CLIJNU.txt'))
    assert prod.data[0]['cli_valid'] == datetime.datetime(2013, 6, 30)
    assert prod.valid == utc(2013, 7, 1, 0, 36)
    assert prod.data[0]['data']['temperature_maximum'] == 75
    assert prod.data[0]['data']['temperature_maximum_time'] == "259 PM"
    assert prod.data[0]['data']['temperature_minimum_time'] == "431 AM"
    assert prod.data[0]['data']['precip_today'] == TRACE_VALUE

    j = prod.get_jabbers("http://localhost")
    ans = ('JUNEAU Jun 30 Climate Report: High: 75 '
           'Low: 52 Precip: Trace Snow: M '
           'http://localhost?pid=201307010036-PAJK-CDAK47-CLIJNU')
    assert j[0][0] == ans
Esempio n. 17
0
def test_cli():
    """ CLIJUN Test the processing of a CLI product """
    prod = cliparser(get_test_file('CLI/CLIJNU.txt'))
    assert prod.data[0]['cli_valid'] == datetime.datetime(2013, 6, 30)
    assert prod.valid == utc(2013, 7, 1, 0, 36)
    assert prod.data[0]['data']['temperature_maximum'] == 75
    assert prod.data[0]['data']['temperature_maximum_time'] == "259 PM"
    assert prod.data[0]['data']['temperature_minimum_time'] == "431 AM"
    assert prod.data[0]['data']['precip_today'] == TRACE_VALUE

    j = prod.get_jabbers("http://localhost")
    ans = (
        'JUNEAU Jun 30 Climate Report: High: 75 '
        'Low: 52 Precip: Trace Snow: M '
        'http://localhost?pid=201307010036-PAJK-CDAK47-CLIJNU'
    )
    assert j[0][0] == ans
Esempio n. 18
0
    def test_cli(self):
        """ CLIJUN Test the processing of a CLI product """
        prod = cliparser(get_file('CLIJNU.txt'))
        self.assertEqual(prod.data[0]['cli_valid'],
                         datetime.datetime(2013, 6, 30))
        self.assertEqual(prod.valid,
                         datetime.datetime(2013, 7, 1, 0, 36).replace(
                            tzinfo=pytz.timezone("UTC")))
        self.assertEqual(prod.data[0]['data']['temperature_maximum'], 75)
        self.assertEqual(prod.data[0]['data']['temperature_maximum_time'],
                         "259 PM")
        self.assertEqual(prod.data[0]['data']['temperature_minimum_time'],
                         "431 AM")
        self.assertEqual(prod.data[0]['data']['precip_today'], TRACE_VALUE)

        j = prod.get_jabbers("http://localhost")
        self.assertEqual(j[0][0], (
             'JUNEAU Jun 30 Climate Report: High: 75 '
             'Low: 52 Precip: Trace Snow: M '
             'http://localhost?pid=201307010036-PAJK-CDAK47-CLIJNU'))
Esempio n. 19
0
    def test_cli(self):
        """ CLIJUN Test the processing of a CLI product """
        prod = cliparser(get_file('CLIJNU.txt'))
        self.assertEqual(prod.data[0]['cli_valid'],
                         datetime.datetime(2013, 6, 30))
        self.assertEqual(prod.valid,
                         datetime.datetime(2013, 7, 1, 0, 36).replace(
                            tzinfo=pytz.timezone("UTC")))
        self.assertEqual(prod.data[0]['data']['temperature_maximum'], 75)
        self.assertEqual(prod.data[0]['data']['temperature_maximum_time'],
                         "259 PM")
        self.assertEqual(prod.data[0]['data']['temperature_minimum_time'],
                         "431 AM")
        self.assertEqual(prod.data[0]['data']['precip_today'], 0.0001)

        j = prod.get_jabbers("http://localhost")
        self.assertEqual(j[0][0], (
             'JUNEAU Jun 30 Climate Report: High: 75 '
             'Low: 52 Precip: Trace Snow: M '
             'http://localhost?pid=201307010036-PAJK-CDAK47-CLIJNU'))
Esempio n. 20
0
 def test_170530_none(self):
     """CLILWD errored in production, so we add a test!"""
     prod = cliparser(get_file('CLILWD.txt'))
     self.assertEquals(prod.data[0]['data']['temperature_maximum'],
                       76)
Esempio n. 21
0
 def test_141003_alaska(self):
     """ CLIBET Some alaska data was not getting processed"""
     prod = cliparser(get_file("CLIBET.txt"))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'], 17)
     self.assertEqual(prod.data[0]['data']['snow_jul1'], 14.4)
Esempio n. 22
0
def test_141230_newregime():
    """ CLITCS has a new regime """
    prod = cliparser(get_test_file('CLI/CLITCS.txt'))
    assert prod.data[0]['data']['temperature_minimum'] == 22
Esempio n. 23
0
 def test_141022_correction(self):
     """ CLIEWN See what happens if we have a valid product correction """
     prod = cliparser(get_file('CLIEWN.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'], 83)
Esempio n. 24
0
 def test_141103_recordsnow(self):
     """ CLIBGR Make sure we can deal with record snowfall, again... """
     prod = cliparser(get_file('CLIBGR.txt'))
     self.assertEqual(prod.data[0]['data']['snow_today'], 12.0)
Esempio n. 25
0
 def test_141201_clihou(self):
     """ CLIHOU See that we can finally parse the CLIHOU product! """
     prod = cliparser(get_file('CLIHOU.txt'))
     self.assertEqual(prod.data[0]['cli_station'],
                      'HOUSTON INTERCONTINENTAL')
     self.assertEqual(prod.data[1]['cli_station'], 'HOUSTON/HOBBY AIRPORT')
Esempio n. 26
0
def test_141229_newregime7():
    """ CLIBOI has a new regime """
    prod = cliparser(get_test_file('CLI/CLIBOI.txt'))
    assert prod.data[0]['data']['temperature_minimum'] == 23
Esempio n. 27
0
 def test_141003_missing(self):
     """ CLIFFC We are missing some data! """
     prod = cliparser(get_file("CLIFFC.txt"))
     self.assertEqual(prod.data[0]['data']['temperature_maximum_normal'],
                      78)
Esempio n. 28
0
 def test_150112_climso(self):
     """ CLIMSO_2 found some issue with this in production? """
     prod = cliparser(get_file('CLIMSO_2.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_minimum'],
                      16)
Esempio n. 29
0
 def test_cli3(self):
     """ CLINYC test """
     prod = cliparser(get_file('CLINYC.txt'))
     self.assertEqual(prod.data[0]['data']['snow_today_record_years'][0],
                      1925)
     self.assertEqual(prod.data[0]['data']['snow_today_record'], 11.5)
Esempio n. 30
0
 def test_150303_alaska(self):
     """CLIANN Attempt to account for the badly formatted CLIs"""
     prod = cliparser(get_file('CLIANN.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_maximum_time'],
                      '0151 PM')
Esempio n. 31
0
 def test_141013_missing(self):
     """ CLIEST See why Esterville was not going to the database! """
     prod = cliparser(get_file('CLIEST.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'], 62)
     self.assertEqual(prod.data[0]['data']['precip_month'], 1.22)
Esempio n. 32
0
 def test_140930_mm_precip(self):
     """ CLIABY Make sure having MM as today's precip does not error out """
     prod = cliparser(get_file('CLIABY.txt'))
     self.assertTrue(prod.data[0]['data'].get('precip_today') is None)
Esempio n. 33
0
 def test_141114_coopaux(self):
     """ CLIEAR Product had aux COOP data, which confused ingest """
     prod = cliparser(get_file('CLIEAR.txt'))
     self.assertEqual(prod.data[0]['data']['precip_today'], 0)
Esempio n. 34
0
 def test_141229_newregime(self):
     """ CLIEKA has a new regime """
     prod = cliparser(get_file('CLIEKA.txt'))
     self.assertEqual(prod.data[0]['data']['precip_today_record_years'][0],
                      1896)
Esempio n. 35
0
 def test_141230_newregime(self):
     """ CLITCS has a new regime """
     prod = cliparser(get_file('CLITCS.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_minimum'],
                      22)
Esempio n. 36
0
 def test_141003_alaska(self):
     """ CLIBET Some alaska data was not getting processed"""
     prod = cliparser(get_file("CLIBET.txt"))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'], 17)
     self.assertEqual(prod.data[0]['data']['snow_jul1'], 14.4)
Esempio n. 37
0
 def test_141229_newregime5(self):
     """ CLIICT has a new regime """
     prod = cliparser(get_file('CLIICT.txt'))
     self.assertEqual(prod.data[0]['data']['precip_today'],
                      0.00)
Esempio n. 38
0
 def test_141229_newregime4(self):
     """ CLIOLF has a new regime """
     prod = cliparser(get_file('CLIOLF.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_average'],
                      -2)
Esempio n. 39
0
def test_190510_parsefail():
    """This CLIDMH is not happy."""
    prod = cliparser(get_test_file('CLI/CLIDMH.txt'))
    assert prod.data[0]['data']['temperature_maximum'] == 74
Esempio n. 40
0
 def test_141229_newregime5(self):
     """ CLIICT has a new regime """
     prod = cliparser(get_file('CLIICT.txt'))
     self.assertEqual(prod.data[0]['data']['precip_today'],
                      0.00)
Esempio n. 41
0
 def test_141114_coopaux(self):
     """ CLIEAR Product had aux COOP data, which confused ingest """
     prod = cliparser(get_file('CLIEAR.txt'))
     self.assertEqual(prod.data[0]['data']['precip_today'], 0)
Esempio n. 42
0
 def test_141229_newregime3(self):
     """ CLIDRT has a new regime """
     prod = cliparser(get_file('CLIDRT.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_minimum'],
                      37)
Esempio n. 43
0
 def test_141024_recordsnow(self):
     """ CLIOME See that we can handle record snowfall """
     prod = cliparser(get_file('CLIOME.txt'))
     self.assertEqual(prod.data[0]['data']['snow_today'], 3.6)
Esempio n. 44
0
 def test_141022_correction(self):
     """ CLIEWN See what happens if we have a valid product correction """
     prod = cliparser(get_file('CLIEWN.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'], 83)
Esempio n. 45
0
 def test_141013_missing(self):
     """ CLIEST See why Esterville was not going to the database! """
     prod = cliparser(get_file('CLIEST.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'], 62)
     self.assertEqual(prod.data[0]['data']['precip_month'], 1.22)
Esempio n. 46
0
 def test_141024_recordsnow(self):
     """ CLIOME See that we can handle record snowfall """
     prod = cliparser(get_file('CLIOME.txt'))
     self.assertEqual(prod.data[0]['data']['snow_today'], 3.6)
Esempio n. 47
0
 def test_141003_missing(self):
     """ CLIFFC We are missing some data! """
     prod = cliparser(get_file("CLIFFC.txt"))
     self.assertEqual(prod.data[0]['data']['temperature_maximum_normal'],
                      78)
Esempio n. 48
0
 def test_150303_alaska(self):
     """CLIANN Attempt to account for the badly formatted CLIs"""
     prod = cliparser(get_file('CLIANN.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_maximum_time'],
                      '0151 PM')
Esempio n. 49
0
 def test_140930_mm_precip(self):
     """ CLIABY Make sure having MM as today's precip does not error out """
     prod = cliparser(get_file('CLIABY.txt'))
     self.assertTrue(prod.data[0]['data'].get('precip_today') is None)
Esempio n. 50
0
 def test_141230_newregime(self):
     """ CLITCS has a new regime """
     prod = cliparser(get_file('CLITCS.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_minimum'],
                      22)
Esempio n. 51
0
 def test_141201_clihou(self):
     """ CLIHOU See that we can finally parse the CLIHOU product! """
     prod = cliparser(get_file('CLIHOU.txt'))
     self.assertEqual(prod.data[0]['cli_station'],
                      'HOUSTON INTERCONTINENTAL')
     self.assertEqual(prod.data[1]['cli_station'], 'HOUSTON/HOBBY AIRPORT')
Esempio n. 52
0
 def test_141103_recordsnow(self):
     """ CLIBGR Make sure we can deal with record snowfall, again... """
     prod = cliparser(get_file('CLIBGR.txt'))
     self.assertEqual(prod.data[0]['data']['snow_today'], 12.0)
Esempio n. 53
0
 def test_cli3(self):
     """ CLINYC test """
     prod = cliparser(get_file('CLINYC.txt'))
     self.assertEqual(prod.data[0]['data']['snow_today_record_years'][0],
                      1925)
     self.assertEqual(prod.data[0]['data']['snow_today_record'], 11.5)
Esempio n. 54
0
 def test_141229_newregime4(self):
     """ CLIOLF has a new regime """
     prod = cliparser(get_file('CLIOLF.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_average'],
                      -2)
Esempio n. 55
0
 def test_151019_clibna(self):
     """CLIBNA is a new diction"""
     prod = cliparser(get_file('CLIBNA.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'],
                      47)
Esempio n. 56
0
 def test_151019_clibna(self):
     """CLIBNA is a new diction"""
     prod = cliparser(get_file('CLIBNA.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_maximum'],
                      47)
Esempio n. 57
0
 def test_150112_climso(self):
     """ CLIMSO_2 found some issue with this in production? """
     prod = cliparser(get_file('CLIMSO_2.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_minimum'],
                      16)
Esempio n. 58
0
def test_141229_newregime6():
    """ CLIMSO has a new regime """
    prod = cliparser(get_test_file('CLI/CLIMSO.txt'))
    assert prod.data[0]['data']['temperature_minimum'] == 12
Esempio n. 59
0
 def test_141229_newregime6(self):
     """ CLIMSO has a new regime """
     prod = cliparser(get_file('CLIMSO.txt'))
     self.assertEqual(prod.data[0]['data']['temperature_minimum'],
                      12)
Esempio n. 60
0
 def test_141229_newregime(self):
     """ CLIEKA has a new regime """
     prod = cliparser(get_file('CLIEKA.txt'))
     self.assertEqual(prod.data[0]['data']['precip_today_record_years'][0],
                      1896)