different-contexts.html (1470B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title> 5 Connections and disconnections with different contexts 6 </title> 7 <script src="/resources/testharness.js"></script> 8 <script src="/resources/testharnessreport.js"></script> 9 <script src="/webaudio/resources/audit-util.js"></script> 10 </head> 11 <body> 12 <script> 13 // Different contexts to be used for testing. 14 let c1; 15 let c2; 16 17 test((t) => { 18 c1 = new AudioContext(); 19 c2 = new AudioContext(); 20 }, 'setup: Contexts for testing'); 21 22 test((t) => { 23 const g1 = new GainNode(c1); 24 const g2 = new GainNode(c2); 25 assert_throws_dom('InvalidAccessError', () => g2.connect(g1)); 26 }, 'Test 1: Connect nodes between contexts'); 27 28 test((t) => { 29 const g1 = new GainNode(c1); 30 const g2 = new GainNode(c2); 31 assert_throws_dom('InvalidAccessError', () => g2.connect(g1.gain)); 32 }, 'Test 2: Connect AudioParam between contexts'); 33 34 test((t) => { 35 const g1 = new GainNode(c1); 36 const g2 = new GainNode(c2); 37 assert_throws_dom('InvalidAccessError', () => g2.disconnect(g1)); 38 }, 'Test 3: Disconnect nodes between contexts'); 39 40 test((t) => { 41 const g1 = new GainNode(c1); 42 const g2 = new GainNode(c2); 43 assert_throws_dom('InvalidAccessError', () => g2.disconnect(g1.gain)); 44 }, 'Test 4: Disconnect AudioParam between contexts'); 45 </script> 46 </body> 47 </html>