Example #1
0
    def test_acquire_data_by_request_multidim_short(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name = "shortdata"
        req.slice = (slice(0), slice(0, 10), slice(0, 10))

        name, data, typecode, dims, attrs = dsh_1.acquire_data_by_request(
            request=req)
        #        raise StandardError(str(name) + "\n" + str(data) + "\n" + str(typecode) + "\n" + str(dims) + "\n" + str(attrs))

        self.assertEqual(name, "shortdata")
        self.assertEqual(typecode, 'h')
        self.assertEqual(dims, (u'time', u'lat', u'lon'))
        self.assertEqual(
            attrs, {
                u'units': u'short',
                u'long_name': u'short_data',
                u'standard_name': u'shorts'
            })
        import numpy
        arr = numpy.asarray(data).flat.copy()
        lt_1 = arr < 32767
        gt_0 = arr > -32767
        self.assertTrue(lt_1.min(), lt_1.max())
        self.assertTrue(gt_0.min(), gt_0.max())
Example #2
0
    def test_acquire_data_by_request_multidim_double(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name = "doubledata"
        req.slice = (slice(0), slice(0, 10), slice(0, 10))

        name, data, typecode, dims, attrs = dsh_1.acquire_data_by_request(
            request=req)

        self.assertEqual(name, "doubledata")
        self.assertEqual(typecode, 'd')
        self.assertEqual(dims, (u'time', u'lat', u'lon'))
        self.assertEqual(
            attrs, {
                u'units': u'dbl',
                u'long_name': u'double_data',
                u'standard_name': u'doubles'
            })
        import numpy
        arr = numpy.asarray(data).flat.copy()
        print arr
        lt_1 = arr <= 10000
        gt_0 = arr >= 0
        self.assertTrue(lt_1.min(), lt_1.max())
        self.assertTrue(gt_0.min(), gt_0.max())
    def test_acquire_data_by_request_with_no_dim_or_var(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name="no_var_or_dim_with_this_name"
        req.slice=(slice(0, 10))

        with self.assertRaises(DataAcquisitionError) as cm:
            dsh_1.acquire_data_by_request(request=req)

        ex = cm.exception
        self.assertEqual(ex.message, "The name 'no_var_or_dim_with_this_name' does not appear to be available in the dataset, cannot acquire data")
Example #4
0
    def test_acquire_data_by_request_with_no_dim_or_var(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name = "no_var_or_dim_with_this_name"
        req.slice = (slice(0, 10))

        with self.assertRaises(DataAcquisitionError) as cm:
            dsh_1.acquire_data_by_request(request=req)

        ex = cm.exception
        self.assertEqual(
            ex.message,
            "The name 'no_var_or_dim_with_this_name' does not appear to be available in the dataset, cannot acquire data"
        )
    def test_acquire_data_by_request_with_dim_no_var(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name="lon"
        req.slice=(slice(0, 10))

        name, data, typecode, dims, attrs = dsh_1.acquire_data_by_request(request=req)
#        raise StandardError(str(name) + "\n" + str(data) + "\n" + str(typecode) + "\n" + str(dims) + "\n" + str(attrs))
        self.assertEqual(name, "lon")
        self.assertEqual(typecode, 'l')
        self.assertEqual(dims, ('lon',))
        self.assertEqual(attrs, {})
        import numpy
        arr = numpy.asarray(data).flat.copy()
        self.assertTrue(numpy.array_equiv(arr, numpy.arange(0, 10)))
    def test_acquire_data_by_request_onedim(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name="longitude"
        req.slice=(slice(0, 10))

        name, data, typecode, dims, attrs = dsh_1.acquire_data_by_request(request=req)
#        raise StandardError(str(name) + "\n" + str(data) + "\n" + str(typecode) + "\n" + str(dims) + "\n" + str(attrs))
        self.assertEqual(name, "longitude")
        self.assertEqual(typecode, 'f')
        self.assertEqual(dims, (u'lon',))
        self.assertEqual(attrs, {u'units': u'degrees_east', u'long_name': u'longitude', u'standard_name': u'longitude'})
        import numpy
        arr = numpy.asarray(data).flat.copy()
        self.assertTrue(numpy.array_equiv(arr, numpy.arange(-90, -85, 0.5, dtype='float32')))
Example #7
0
    def test_acquire_data_by_request_with_dim_no_var(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name = "lon"
        req.slice = (slice(0, 10))

        name, data, typecode, dims, attrs = dsh_1.acquire_data_by_request(
            request=req)
        #        raise StandardError(str(name) + "\n" + str(data) + "\n" + str(typecode) + "\n" + str(dims) + "\n" + str(attrs))
        self.assertEqual(name, "lon")
        self.assertEqual(typecode, 'l')
        self.assertEqual(dims, ('lon', ))
        self.assertEqual(attrs, {})
        import numpy
        arr = numpy.asarray(data).flat.copy()
        self.assertTrue(numpy.array_equiv(arr, numpy.arange(0, 10)))
    def test_acquire_data_by_request_multidim_short(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name="shortdata"
        req.slice=(slice(0), slice(0, 10), slice(0, 10))

        name, data, typecode, dims, attrs = dsh_1.acquire_data_by_request(request=req)
        #        raise StandardError(str(name) + "\n" + str(data) + "\n" + str(typecode) + "\n" + str(dims) + "\n" + str(attrs))

        self.assertEqual(name, "shortdata")
        self.assertEqual(typecode, 'h')
        self.assertEqual(dims, (u'time', u'lat', u'lon'))
        self.assertEqual(attrs, {u'units': u'short', u'long_name': u'short_data', u'standard_name': u'shorts'})
        import numpy
        arr = numpy.asarray(data).flat.copy()
        lt_1 = arr < 32767
        gt_0 = arr > -32767
        self.assertTrue(lt_1.min(), lt_1.max())
        self.assertTrue(gt_0.min(), gt_0.max())
    def test_acquire_data_by_request_multidim_double(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name="doubledata"
        req.slice=(slice(0), slice(0, 10), slice(0, 10))

        name, data, typecode, dims, attrs = dsh_1.acquire_data_by_request(request=req)

        self.assertEqual(name, "doubledata")
        self.assertEqual(typecode, 'd')
        self.assertEqual(dims, (u'time', u'lat', u'lon'))
        self.assertEqual(attrs, {u'units': u'dbl', u'long_name': u'double_data', u'standard_name': u'doubles'})
        import numpy
        arr = numpy.asarray(data).flat.copy()
        print arr
        lt_1 = arr <= 10000
        gt_0 = arr >= 0
        self.assertTrue(lt_1.min(), lt_1.max())
        self.assertTrue(gt_0.min(), gt_0.max())
Example #10
0
    def test_acquire_data_by_request_onedim(self):
        dsh_1 = self._dsh_list["DS_BASE"][0]

        req = ExternalDataRequest()
        req.name = "longitude"
        req.slice = (slice(0, 10))

        name, data, typecode, dims, attrs = dsh_1.acquire_data_by_request(
            request=req)
        #        raise StandardError(str(name) + "\n" + str(data) + "\n" + str(typecode) + "\n" + str(dims) + "\n" + str(attrs))
        self.assertEqual(name, "longitude")
        self.assertEqual(typecode, 'f')
        self.assertEqual(dims, (u'lon', ))
        self.assertEqual(
            attrs, {
                u'units': u'degrees_east',
                u'long_name': u'longitude',
                u'standard_name': u'longitude'
            })
        import numpy
        arr = numpy.asarray(data).flat.copy()
        self.assertTrue(
            numpy.array_equiv(arr, numpy.arange(-90, -85, 0.5,
                                                dtype='float32')))