#NEWLINE# def test_ghost_internal( ) : #NEWLINE# #INDENT# x = np . arange ( 64 ) . reshape ( ( 8 , 8 ) ) #NEWLINE# d = da . from_array ( x , chunks = ( 4 , 4 ) ) #NEWLINE# g = ghost_internal ( d , { #NEWLINE# #INDENT# 0 : 2 , #NEWLINE# 1 : 1 , #NEWLINE# #UNINDENT# } ) #NEWLINE# result = g . compute ( get = get ) #NEWLINE# assert ( g . chunks == ( ( 6 , 6 ) , ( 5 , 5 ) ) ) #NEWLINE# expected = np . array ( [ [ 0 , 1 , 2 , 3 , 4 , 3 , 4 , 5 , 6 , 7 ] , [ 8 , 9 , 10 , 11 , 12 , 11 , 12 , 13 , 14 , 15 ] , [ 16 , 17 , 18 , 19 , 20 , 19 , 20 , 21 , 22 , 23 ] , [ 24 , 25 , 26 , 27 , 28 , 27 , 28 , 29 , 30 , 31 ] , [ 32 , 33 , 34 , 35 , 36 , 35 , 36 , 37 , 38 , 39 ] , [ 40 , 41 , 42 , 43 , 44 , 43 , 44 , 45 , 46 , 47 ] , [ 16 , 17 , 18 , 19 , 20 , 19 , 20 , 21 , 22 , 23 ] , [ 24 , 25 , 26 , 27 , 28 , 27 , 28 , 29 , 30 , 31 ] , [ 32 , 33 , 34 , 35 , 36 , 35 , 36 , 37 , 38 , 39 ] , [ 40 , 41 , 42 , 43 , 44 , 43 , 44 , 45 , 46 , 47 ] , [ 48 , 49 , 50 , 51 , 52 , 51 , 52 , 53 , 54 , 55 ] , [ 56 , 57 , 58 , 59 , 60 , 59 , 60 , 61 , 62 , 63 ] ] ) #NEWLINE# assert eq ( result , expected ) #NEWLINE# assert same_keys ( ghost_internal ( d , { #NEWLINE# #INDENT# 0 : 2 , #NEWLINE# 1 : 1 , #NEWLINE# #UNINDENT# } ) , result )