示例#1
0
def test_data_file_bad_single_parameter():

    dates = np.array([datetime.datetime(2014, 04, 01, 0, 0), 
                      datetime.datetime(2014, 04, 02, 0, 0), 
                      datetime.datetime(2014, 04, 03, 0, 0),
                      datetime.datetime(2014, 04, 04, 0, 0), 
                      datetime.datetime(2014, 04, 05, 0, 0),
    ])
   
    discharge_data = np.array([5.0, 10.0, np.nan, np.nan, 5.5])  
    subsurface_data = np.array([50, 55, 60, 65, 45])

 
    expected = {
        "user": "******",
        "date_created": "4/10/2014 00:00:00 PM",
        "stationid": "000000",
        "column_names": ['Discharge (cfs)', 'Subsurface Flow (mm/day)'],
        "dates": dates,
        "parameters": [
            {"name": "Discharge (cfs)",
            "index": 0,
            "data": discharge_data,
            "mean": np.nanmean(discharge_data),
            "max": np.nanmax(discharge_data),
            "min": np.nanmin(discharge_data)
            },
            {"name": "Subsurface Flow (mm/day)",
            "index": 1,
            "data": subsurface_data,
            "mean": np.nanmean(subsurface_data),
            "max": np.nanmax(subsurface_data),
            "min": np.nanmin(subsurface_data)
            },
        ]
    }
	
    fileobj = StringIO(fixture["data_file_bad_single_parameter"])
    actual = watertxt.read_file_in(filestream = fileobj)

    nose.tools.assert_equals(actual["user"], expected["user"])
    nose.tools.assert_equals(actual["date_created"], expected["date_created"])
    nose.tools.assert_equals(actual["stationid"], expected["stationid"])
    nose.tools.assert_equals(actual["column_names"], expected["column_names"])

    np.testing.assert_equal(actual["dates"], expected["dates"])

    for i in range(len(actual["parameters"])):
        np.testing.assert_equal(actual["parameters"][i]["name"], expected["parameters"][i]["name"])        
        np.testing.assert_equal(actual["parameters"][i]["index"], expected["parameters"][i]["index"])
         
        np.testing.assert_equal(expected["parameters"][i], actual["parameters"][i], err_msg = "Error in: {}".format(actual["parameters"][i]["name"]))
        
        np.testing.assert_equal(actual["parameters"][i]["mean"], expected["parameters"][i]["mean"])
        np.testing.assert_equal(actual["parameters"][i]["max"], expected["parameters"][i]["max"])
        np.testing.assert_equal(actual["parameters"][i]["min"], expected["parameters"][i]["min"])  
示例#2
0
def test_data_file_clean():

    expected = fixture["sample_data_dict"]    
    
    fileobj = StringIO(fixture["data_file_clean"])
    actual = watertxt.read_file_in(filestream = fileobj)
	
    nose.tools.assert_equals(actual["user"], expected["user"])
    nose.tools.assert_equals(actual["date_created"], expected["date_created"])
    nose.tools.assert_equals(actual["stationid"], expected["stationid"])
    nose.tools.assert_equals(actual["column_names"], expected["column_names"])

    np.testing.assert_equal(actual["dates"], expected["dates"])
    
    for i in range(len(actual["parameters"])):
        np.testing.assert_equal(actual["parameters"][i]["name"], expected["parameters"][i]["name"])        
        np.testing.assert_equal(actual["parameters"][i]["index"], expected["parameters"][i]["index"])
         
        np.testing.assert_equal(expected["parameters"][i], actual["parameters"][i], err_msg = "Error in: {}".format(actual["parameters"][i]["name"]))
        
        np.testing.assert_equal(actual["parameters"][i]["mean"], expected["parameters"][i]["mean"])
        np.testing.assert_equal(actual["parameters"][i]["max"], expected["parameters"][i]["max"])
        np.testing.assert_equal(actual["parameters"][i]["min"], expected["parameters"][i]["min"])