From commits-return-453-apmail-climate-commits-archive=climate.apache.org@climate.incubator.apache.org Tue Jul 30 20:03:44 2013 Return-Path: X-Original-To: apmail-climate-commits-archive@minotaur.apache.org Delivered-To: apmail-climate-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9133310614 for ; Tue, 30 Jul 2013 20:03:44 +0000 (UTC) Received: (qmail 66518 invoked by uid 500); 30 Jul 2013 20:03:44 -0000 Delivered-To: apmail-climate-commits-archive@climate.apache.org Received: (qmail 66492 invoked by uid 500); 30 Jul 2013 20:03:44 -0000 Mailing-List: contact commits-help@climate.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@climate.incubator.apache.org Delivered-To: mailing list commits@climate.incubator.apache.org Received: (qmail 66485 invoked by uid 99); 30 Jul 2013 20:03:44 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 30 Jul 2013 20:03:44 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 30 Jul 2013 20:03:41 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 8AD7F238889B; Tue, 30 Jul 2013 20:03:20 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1508594 - /incubator/climate/branches/RefactorInput/ocw/tests/test_dataset_processor.py Date: Tue, 30 Jul 2013 20:03:20 -0000 To: commits@climate.incubator.apache.org From: goodale@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20130730200320.8AD7F238889B@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: goodale Date: Tue Jul 30 20:03:20 2013 New Revision: 1508594 URL: http://svn.apache.org/r1508594 Log: CLIMATE-213 - Updated the tests for dataset_processor module after finally understanding how numpy.meshgrid works Modified: incubator/climate/branches/RefactorInput/ocw/tests/test_dataset_processor.py Modified: incubator/climate/branches/RefactorInput/ocw/tests/test_dataset_processor.py URL: http://svn.apache.org/viewvc/incubator/climate/branches/RefactorInput/ocw/tests/test_dataset_processor.py?rev=1508594&r1=1508593&r2=1508594&view=diff ============================================================================== --- incubator/climate/branches/RefactorInput/ocw/tests/test_dataset_processor.py (original) +++ incubator/climate/branches/RefactorInput/ocw/tests/test_dataset_processor.py Tue Jul 30 20:03:20 2013 @@ -43,7 +43,7 @@ class TestRcmesSpatialRegrid(unittest.Te lat_range = ma.array(range(-89, 90, 2)) lon_range = ma.array(range(-179, 180, 2)) - lats, lons = np.meshgrid(lat_range, lon_range) + lons, lats = np.meshgrid(lon_range, lat_range) # Convert these to masked arrays lats = ma.array(lats) lons = ma.array(lons) @@ -51,13 +51,14 @@ class TestRcmesSpatialRegrid(unittest.Te lat2_range = np.array(range(-89, 90, 4)) lon2_range = np.array(range(-179, 180, 4)) - lats2, lons2 = np.meshgrid(lat2_range, lon2_range) + lons2, lats2 = np.meshgrid(lon2_range, lat2_range) # Convert to masked arrays lats2 = ma.array(lats2) lons2 = ma.array(lons2) regridded_values = dp._rcmes_spatial_regrid(spatial_values, lats, lons, lats2, lons2) self.assertEqual(regridded_values.shape, lats2.shape) + self.assertEqual(regridded_values.shape, lons2.shape) class TestSpatialRegrid(unittest.TestCase): @@ -68,18 +69,23 @@ class TestSpatialRegrid(unittest.TestCas self.times = np.array([datetime.datetime(year, month, 1) for year in range(2000, 2010) for month in range(1, 13)]) self.values = np.ones([len(self.times), len(self.lats), len(self.lons)]) self.input_dataset = ds.Dataset(self.lats, self.lons, self.times, self.values, variable="test variable name") - self.new_lons = np.array(range(-179, 180, 5)) self.new_lats = np.array(range(-89, 90, 4)) - # Custome Assertions to handle Numpy Arrays + self.new_lons = np.array(range(-179, 180, 4)) + self.regridded_dataset = dp.spatial_regrid(self.input_dataset, self.new_lats, self.new_lons) + # Custom Assertions to handle Numpy Arrays def assert1DArraysEqual(self, array1, array2): self.assertSequenceEqual(tuple(array1), tuple(array2)) def test_returned_lats(self): - regridded_dataset = dp.spatial_regrid(self.input_dataset, self.new_lats, self.new_lons) - self.assert1DArraysEqual(regridded_dataset.lats, self.new_lats) + self.assert1DArraysEqual(self.regridded_dataset.lats, self.new_lats) + def test_returned_lons(self): - regridded_dataset = dp.spatial_regrid(self.input_dataset, self.new_lats, self.new_lons) - self.assert1DArraysEqual(regridded_dataset.lons, self.new_lons) + self.assert1DArraysEqual(self.regridded_dataset.lons, self.new_lons) + + def test_shape_of_values(self): + regridded_data_shape = self.regridded_dataset.values.shape + expected_data_shape = (len(self.times), len(self.new_lats), len(self.new_lons)) + self.assertSequenceEqual(regridded_data_shape, expected_data_shape)