def test_basic_numbered_tiles(self): """Test creating a multiple numbered tiles""" from satpy.writers.scmi import SCMIWriter from xarray import DataArray from pyresample.geometry import AreaDefinition from pyresample.utils import proj4_str_to_dict w = SCMIWriter(base_dir=self.base_dir, compress=True) area_def = AreaDefinition( 'test', 'test', 'test', proj_dict=proj4_str_to_dict('+proj=lcc +datum=WGS84 +ellps=WGS84 +lon_0=-95. +lat_0=25 +lat_1=25 +units=m +no_defs'), x_size=100, y_size=200, area_extent=(-1000., -1500., 1000., 1500.), ) now = datetime.utcnow() ds = DataArray( np.linspace(0., 1., 20000, dtype=np.float32).reshape((200, 100)), attrs=dict( name='test_ds', platform_name='PLAT', sensor='SENSOR', units='1', area=area_def, start_time=now, end_time=now + timedelta(minutes=20)) ) fn = w.save_datasets([ds], sector_id='TEST', source_name="TESTS", tile_count=(3, 3)) # `fn` is currently the last file created self.assertTrue(os.path.isfile(fn)) self.assertIn('T009', fn)
def test_lettered_tiles_bad_filename(self): """Test creating a lettered grid with a bad filename.""" from satpy.writers.scmi import SCMIWriter from xarray import DataArray from pyresample.geometry import AreaDefinition from pyresample.utils import proj4_str_to_dict w = SCMIWriter(base_dir=self.base_dir, compress=True, filename="{Bad Key}.nc") area_def = AreaDefinition( 'test', 'test', 'test', proj4_str_to_dict( '+proj=lcc +datum=WGS84 +ellps=WGS84 +lon_0=-95. ' '+lat_0=25 +lat_1=25 +units=m +no_defs'), 1000, 2000, (-1000000., -1500000., 1000000., 1500000.), ) now = datetime(2018, 1, 1, 12, 0, 0) ds = DataArray(da.from_array(np.linspace(0., 1., 2000000, dtype=np.float32).reshape( (2000, 1000)), chunks=500), attrs=dict(name='test_ds', platform_name='PLAT', sensor='SENSOR', units='1', area=area_def, start_time=now, end_time=now + timedelta(minutes=20))) self.assertRaises(KeyError, w.save_datasets, [ds], sector_id='LCC', source_name='TESTS', tile_count=(3, 3), lettered_grid=True)
def test_lettered_tiles_bad_filename(self): """Test creating a lettered grid with a bad filename""" from satpy.writers.scmi import SCMIWriter from satpy import Dataset from pyresample.geometry import AreaDefinition from pyresample.utils import proj4_str_to_dict w = SCMIWriter(base_dir=self.base_dir, compress=True, file_pattern="{Bad Key}.nc") area_def = AreaDefinition( 'test', 'test', 'test', proj_dict=proj4_str_to_dict( '+proj=lcc +datum=WGS84 +ellps=WGS84 +lon_0=-95. +lat_0=25 +lat_1=25 +units=m +no_defs' ), x_size=1000, y_size=2000, area_extent=(-1000000., -1500000., 1000000., 1500000.), ) now = datetime.utcnow() ds = Dataset( np.linspace(0., 1., 2000000, dtype=np.float32).reshape( (2000, 1000)), name='test_ds', platform='PLAT', sensor='SENSOR', units='1', area=area_def, start_time=now, end_time=now + timedelta(minutes=20), ) self.assertRaises(KeyError, w.save_dataset, ds, sector_id='LCC', source_name="TESTS", tile_count=(3, 3), lettered_grid=True)
def test_init(self): """Test basic init method of writer.""" from satpy.writers.scmi import SCMIWriter SCMIWriter(base_dir=self.base_dir)