def test_merge(A, B, how, where, shift): expected = { ('v', '+', 0): numpy.array([ [0., 1., 2., nan], [3., 4., 5., nan], [6., 7., 8., nan], [9., 10., 11., nan], [0., 1., 2., 3.], [4., 5., 6., 7.] ]), ('v', '-', 0): numpy.array([ [0., 1., 2., 3.], [4., 5., 6., 7.], [0., 1., 2., nan], [3., 4., 5., nan], [6., 7., 8., nan], [9., 10., 11., nan] ]), ('v', '+', 2): numpy.array([ [ 0., 1., 2., nan, nan, nan], [ 3., 4., 5., nan, nan, nan], [ 6., 7., 8., nan, nan, nan], [ 9., 10., 11., nan, nan, nan], [nan, nan, 0., 1., 2., 3.], [nan, nan, 4., 5., 6., 7.] ]), ('v', '-', 2): numpy.array([ [nan, nan, 0., 1., 2., 3.], [nan, nan, 4., 5., 6., 7.], [ 0., 1., 2., nan, nan, nan], [ 3., 4., 5., nan, nan, nan], [ 6., 7., 8., nan, nan, nan], [ 9., 10., 11., nan, nan, nan] ]), ('v', '+', -1): numpy.array([ [nan, 0., 1., 2.], [nan, 3., 4., 5.], [nan, 6., 7., 8.], [nan, 9., 10., 11.], [ 0., 1., 2., 3.], [ 4., 5., 6., 7.] ]), ('v', '-', -1): numpy.array([ [ 0., 1., 2., 3.], [ 4., 5., 6., 7.], [nan, 0., 1., 2.], [nan, 3., 4., 5.], [nan, 6., 7., 8.], [nan, 9., 10., 11.] ]), ('h', '+', 0): numpy.array([ [0., 1., 2., 0., 1., 2., 3.], [3., 4., 5., 4., 5., 6., 7.], [6., 7., 8., nan, nan, nan, nan], [9., 10., 11., nan, nan, nan, nan] ]), ('h', '-', 0): numpy.array([ [ 0., 1., 2., 3., 0., 1., 2.], [ 4., 5., 6., 7., 3., 4., 5.], [nan, nan, nan, nan, 6., 7., 8.], [nan, nan, nan, nan, 9., 10., 11.] ]), ('h', '+', 2): numpy.array([ [0., 1., 2., nan, nan, nan, nan], [3., 4., 5., nan, nan, nan, nan], [6., 7., 8., 0., 1., 2., 3.], [9., 10., 11., 4., 5., 6., 7.] ]), ('h', '-', 2): numpy.array([ [nan, nan, nan, nan, 0., 1., 2.], [nan, nan, nan, nan, 3., 4., 5.], [ 0., 1., 2., 3., 6., 7., 8.], [ 4., 5., 6., 7., 9., 10., 11.] ]), ('h', '+', -1): numpy.array([ [nan, nan, nan, 0., 1., 2., 3.], [ 0., 1., 2., 4., 5., 6., 7.], [ 3., 4., 5., nan, nan, nan, nan], [ 6., 7., 8., nan, nan, nan, nan], [ 9., 10., 11., nan, nan, nan, nan] ]), ('h', '-', -1): numpy.array([ [ 0., 1., 2., 3., nan, nan, nan], [ 4., 5., 6., 7., 0., 1., 2.], [nan, nan, nan, nan, 3., 4., 5.], [nan, nan, nan, nan, 6., 7., 8.], [nan, nan, nan, nan, 9., 10., 11.] ]), } result = core.merge(A, B, how=how, where=where, shift=shift) nptest.assert_array_equal(result, expected[(how, where, shift)])
def test_merge_hminus_neg1(self): nptest.assert_array_equal( self.known_AB_hminus_neg1, core.merge(self.A, self.B, how='h', where='-', shift=-1), )
def test_merge_vplus_neg1(self): nptest.assert_array_equal( self.known_AB_vplus_neg1, core.merge(self.A, self.B, how='v', where='+', shift=-1), )
def test_merge_hplus_2(self): nptest.assert_array_equal( self.known_AB_hplus_2, core.merge(self.A, self.B, how='h', where='+', shift=2), )
def test_merge_vminus_2(self): nptest.assert_array_equal( self.known_AB_vminus_2, core.merge(self.A, self.B, how='v', where='-', shift=2), )