@@ -117,14 +117,12 @@ def setUp(self):
117117 self .tgt_cube = mock .Mock (spec = iris .cube .Cube )
118118 self .sx_dim = mock .sentinel .sx_dim
119119 self .sy_dim = mock .sentinel .sy_dim
120- coord_dims = mock .Mock (side_effect = ([self .sx_dim ], [self .sy_dim ]))
120+ coord_dims = mock .Mock (side_effect = ([self .sx_dim ], [self .sy_dim ],
121+ [self .sx_dim ], [self .sy_dim ]))
121122 self .metadata = dict (standard_name = 'air_pressure' ,
122123 long_name = 'long_name' , var_name = 'var_name' ,
123124 units = 'Pa' , attributes = {}, cell_methods = ())
124125 self .data = mock .sentinel .data
125- self .cube = mock .Mock (spec = iris .cube .Cube , coord_dims = coord_dims ,
126- metadata = self .metadata , dim_coords = (),
127- aux_coords = (), data = self .data )
128126 scrs = mock .sentinel .scrs
129127 self .sxp = mock .sentinel .sx_points
130128 self .sxb = mock .sentinel .sx_contiguous_bounds
@@ -141,10 +139,14 @@ def setUp(self):
141139 gy = mock .Mock (coord_system = tcrs )
142140 self .src_grid = (self .sx , self .sy )
143141 tgt_grid = (gx , gy )
142+ dim_coords = [self .sx , self .sy ]
143+ self .cube = mock .Mock (spec = iris .cube .Cube , coord_dims = coord_dims ,
144+ metadata = self .metadata , dim_coords = dim_coords ,
145+ aux_coords = (), data = self .data )
144146 self .side_effect = (self .src_grid , tgt_grid )
145147 self .snapshot_grid = 'agg_regrid.snapshot_grid'
146148 self .get_xy_dim_coords = 'agg_regrid.get_xy_dim_coords'
147- self .depth = DEFAULT_BUFFER_DEPTH
149+ self .depth = mock . sentinel . buffer_depth
148150
149151 def test_bad_src_cube (self ):
150152 with mock .patch (self .snapshot_grid , side_effect = self .side_effect ):
@@ -179,10 +181,14 @@ def test_same_crs(self):
179181 gxx , gyy = (mock .sentinel .gxx , mock .sentinel .gyy )
180182 with mock .patch ('numpy.meshgrid' , return_value = (gxx , gyy )):
181183 data = 1
182- with mock .patch ('agg_regrid.agg' ,
183- return_value = data ) as magg :
184- regridder = Regridder (self .src_cube , self .tgt_cube )
185- result = regridder (self .cube )
184+ mock_agg = 'agg_regrid.agg'
185+ with mock .patch (mock_agg , return_value = data ) as magg :
186+ mock_add_dim_coord = 'iris.cube.Cube.add_dim_coord'
187+ with mock .patch (mock_add_dim_coord ) as madd :
188+ regridder = Regridder (self .src_cube ,
189+ self .tgt_cube ,
190+ buffer_depth = self .depth )
191+ result = regridder (self .cube )
186192
187193 self .assertEqual (regridder ._sx_bounds , self .sxb )
188194 self .assertEqual (regridder ._sy_bounds , self .syb )
@@ -192,9 +198,13 @@ def test_same_crs(self):
192198 self .syb , self .sx_dim , self .sy_dim , gxx , gyy ,
193199 self .depth )]
194200 self .assertEqual (magg .call_args_list , expected )
201+ expected = [mock .call (self .sx .copy (), [self .sx_dim ]),
202+ mock .call (self .sy .copy (), [self .sy_dim ])]
203+ self .assertEqual (madd .call_args_list , expected )
195204 cube = iris .cube .Cube (data )
196205 cube .metadata = self .metadata
197206 self .assertEqual (result , cube )
207+ self .assertEqual (regridder .buffer_depth , self .depth )
198208
199209
200210if __name__ == '__main__' :
0 commit comments