You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@climate.apache.org by ja...@apache.org on 2016/06/14 06:38:11 UTC
[5/6] climate git commit: Add new tests to dataset processor
Add new tests to dataset processor
- Add test_daily_to_daily_rebin test in TestTemporalRebin class
- Add test_invalid_unit_rebin test in TestTemporalRebin class
- Add test_daily_time in TestNormalizeDatasetDatetimes class
- Fix ten_year_monthly_15th_dataset function
Project: http://git-wip-us.apache.org/repos/asf/climate/repo
Commit: http://git-wip-us.apache.org/repos/asf/climate/commit/91da3a2f
Tree: http://git-wip-us.apache.org/repos/asf/climate/tree/91da3a2f
Diff: http://git-wip-us.apache.org/repos/asf/climate/diff/91da3a2f
Branch: refs/heads/master
Commit: 91da3a2fa8c9b616f999acf60878dc2e6d2eb27b
Parents: c3691d2
Author: Ibrahim <ja...@gmail.com>
Authored: Fri Jun 3 19:42:52 2016 +0530
Committer: Ibrahim <ja...@gmail.com>
Committed: Tue Jun 14 01:08:50 2016 +0530
----------------------------------------------------------------------
ocw/tests/test_dataset_processor.py | 29 +++++++++++++++++++++++++----
1 file changed, 25 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/climate/blob/91da3a2f/ocw/tests/test_dataset_processor.py
----------------------------------------------------------------------
diff --git a/ocw/tests/test_dataset_processor.py b/ocw/tests/test_dataset_processor.py
index 6430526..eb39ba6 100644
--- a/ocw/tests/test_dataset_processor.py
+++ b/ocw/tests/test_dataset_processor.py
@@ -318,6 +318,16 @@ class TestTemporalRebin(unittest.TestCase):
self.assertEquals(annual_dataset.variable,
self.ten_year_monthly_dataset.variable)
+ def test_daily_to_daily_rebin(self):
+ daily_dataset = dp.temporal_rebin(
+ self.two_years_daily_dataset, "daily")
+ np.testing.assert_array_equal(
+ daily_dataset.times, self.two_years_daily_dataset.times)
+
+ def test_invalid_unit_rebin(self):
+ with self.assertRaises(ValueError):
+ dp.temporal_rebin(self.two_years_daily_dataset, "days")
+
class TestRcmesSpatialRegrid(unittest.TestCase):
@@ -403,6 +413,17 @@ class TestNormalizeDatasetDatetimes(unittest.TestCase):
# Check that all the days have been shifted to the first of the month
self.assertTrue(all(x.day == 1 for x in new_ds.times))
+ def test_daily_time(self):
+ # Test daily with time.hour != 0
+ self.monthly_dataset.times = np.array([
+ datetime.datetime(
+ year, month, 15, 5)
+ for year in range(2000, 2010)
+ for month in range(1, 13)])
+ new_ds = dp.normalize_dataset_datetimes(self.monthly_dataset, 'daily')
+ # Check that all the days have been shifted to the first of the month
+ self.assertTrue(all(x.hour == 0 for x in new_ds.times))
+
class TestSubset(unittest.TestCase):
def setUp(self):
@@ -475,8 +496,8 @@ class TestSubset(unittest.TestCase):
)
subset = dp.subset(self.subregion, self.target_dataset)
times = np.array([datetime.datetime(year, month, 1)
- for year in range(2000, 2010)
- for month in range(1, 13)])
+ for year in range(2000, 2010)
+ for month in range(1, 13)])
self.assertEqual(subset.lats.shape[0], 82)
self.assertSequenceEqual(list(np.array(range(-81, 82, 2))),
list(subset.lats))
@@ -645,8 +666,8 @@ def ten_year_monthly_dataset():
def ten_year_monthly_15th_dataset():
lats = np.array(range(-89, 90, 2))
lons = np.array(range(-179, 180, 2))
- # Ten Years of monthly data
- times = np.array([datetime.datetime(year, month, 1)
+ # Ten Years of monthly 15th data
+ times = np.array([datetime.datetime(year, month, 15)
for year in range(2000, 2010) for month in range(1, 13)])
values = np.ones([len(times), len(lats), len(lons)])
input_dataset = ds.Dataset(lats,