fix special test case when 'hasChanged' is different
extra JSON test
always store type as index (for mutation) but refresh new webAudioNode as string as per spec