#NEWLINE# def test_collect_Wild( ) : #NEWLINE# #INDENT# 'Collect with respect to functions with Wild argument' #NEWLINE# ( a , b , x , y ) = symbols ( 'a b x y' ) #NEWLINE# f = Function ( 'f' ) #NEWLINE# w1 = Wild ( '.1' ) #NEWLINE# w2 = Wild ( '.2' ) #NEWLINE# assert ( collect ( ( f ( x ) + ( a * f ( x ) ) ) , f ( w1 ) ) == ( ( 1 + a ) * f ( x ) ) ) #NEWLINE# assert ( collect ( ( f ( x , y ) + ( a * f ( x , y ) ) ) , f ( w1 ) ) == ( f ( x , y ) + ( a * f ( x , y ) ) ) ) #NEWLINE# assert ( collect ( ( f ( x , y ) + ( a * f ( x , y ) ) ) , f ( w1 , w2 ) ) == ( ( 1 + a ) * f ( x , y ) ) ) #NEWLINE# assert ( collect ( ( f ( x , y ) + ( a * f ( x , y ) ) ) , f ( w1 , w1 ) ) == ( f ( x , y ) + ( a * f ( x , y ) ) ) ) #NEWLINE# assert ( collect ( ( f ( x , x ) + ( a * f ( x , x ) ) ) , f ( w1 , w1 ) ) == ( ( 1 + a ) * f ( x , x ) ) ) #NEWLINE# assert ( collect ( ( ( a * ( ( x + 1 ) ** y ) ) + ( ( x + 1 ) ** y ) ) , ( w1 ** y ) ) == ( ( 1 + a ) * ( ( x + 1 ) ** y ) ) ) #NEWLINE# assert ( collect ( ( ( a * ( ( x + 1 ) ** y ) ) + ( ( x + 1 ) ** y ) ) , ( w1 ** b ) ) == ( ( a * ( ( x + 1 ) ** y ) ) + ( ( x + 1 ) ** y ) ) ) #NEWLINE# assert ( collect ( ( ( a * ( ( x + 1 ) ** y ) ) + ( ( x + 1 ) ** y ) ) , ( ( x + 1 ) ** w2 ) ) == ( ( 1 + a ) * ( ( x + 1 ) ** y ) ) ) #NEWLINE# assert ( collect ( ( ( a * ( ( x + 1 ) ** y ) ) + ( ( x + 1 ) ** y ) ) , ( w1 ** w2 ) ) == ( ( 1 + a ) * ( ( x + 1 ) ** y ) ) )