public void Engine_AddLibrary_AudioSwitcher() { var engine = new ScriptEngine(); var asLib = engine.AddAudioSwitcherLibrary(GetAudioContext()); Assert.Equal(true, engine.HasGlobalValue(asLib.Name)); }
private static int Main(string[] args) { if (args.Length > 2 || args.Length < 1) { return(PrintUsage()); } //Process CLI Arguments for (var i = 0; i < args.Length - 1; i++) { switch (args[i]) { case "--debug": IsDebug = true; break; } } //Process file name string fName = args[args.Length - 1]; if (!fName.EndsWith(".js")) { Console.WriteLine("Invalid input file"); Console.WriteLine(); return(PrintUsage()); } AudioContext currentContext; if (IsDebug) { currentContext = new IsolatedAudioContext(); } else { currentContext = new SystemAudioContext(); } var engine = new ScriptEngine(); engine.AddCoreLibrary(); engine.AddAudioSwitcherLibrary(currentContext); //Enable to log to CLI //engine.SetGlobalValue("console", new ConsoleOutput(engine)); engine.SetGlobalValue("console", new FirebugConsole(engine)); try { engine.Evaluate(new FileScriptSource(fName)); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } return(0); }
public void AudioSwitcher_getAudioDevices_Recording() { var engine = new ScriptEngine(); engine.AddAudioSwitcherLibrary(GetAudioContext()); Assert.DoesNotThrow(() => engine.Execute("AudioSwitcher.getAudioDevices(2)")); }
public void Engine_RemoveLibrary_AudioSwitcher() { var engine = new ScriptEngine(); var asLib = engine.AddAudioSwitcherLibrary(GetAudioContext()); engine.RemoveLibrary(asLib); Assert.Equal(engine.GetGlobalValue(asLib.Name), Undefined.Value); }
public void AudioSwitcher_AudioDevice_getFlags() { var engine = new ScriptEngine(); engine.AddAudioSwitcherLibrary(GetAudioContext()); const string js = @"AudioSwitcher.getAudioDevices()[0].flags"; //unmutes Assert.DoesNotThrow(() => engine.Execute(js)); }
public void AudioSwitcher_AudioDevice_getVolume() { var engine = new ScriptEngine(); engine.AddAudioSwitcherLibrary(GetAudioContext()); const string js = @"AudioSwitcher.getAudioDevices()[0].volume()"; //don't care what it retuns, just that it exists Assert.DoesNotThrow(() => engine.Execute(js)); }
public void AudioSwitcher_AudioDevice_setMute_false() { var engine = new ScriptEngine(); engine.AddAudioSwitcherLibrary(GetAudioContext()); const string js = @"AudioSwitcher.getAudioDevices()[0].mute(false)"; //unmutes Assert.Equal(false, engine.Evaluate <bool>(js)); }
public void AudioSwitcher_AudioDevice_Exists() { var engine = new ScriptEngine(); engine.AddAudioSwitcherLibrary(GetAudioContext()); const string js = @"AudioSwitcher.getAudioDevices()[0];"; Assert.DoesNotThrow(() => engine.Execute(js)); Assert.NotEqual(null, engine.Evaluate <JavaScriptAudioDevice>(js)); Assert.IsType <JavaScriptAudioDevice>(engine.Evaluate <JavaScriptAudioDevice>(js)); }
public void AudioSwitcher_AudioDevice_toggleMute() { var engine = new ScriptEngine(); engine.AddAudioSwitcherLibrary(GetAudioContext()); const string js = @"AudioSwitcher.getAudioDevices()[0].toggleMute()"; //Toggles the mute and tests non equality of state var isMuted = engine.Evaluate <bool>(js); Assert.NotEqual(isMuted, engine.Evaluate <bool>(js)); }
public void AudioSwitcher_AudioDevice_setVolume() { var engine = new ScriptEngine(); engine.AddAudioSwitcherLibrary(GetAudioContext()); const string setTo10 = @"AudioSwitcher.getAudioDevices()[0].volume(10)"; const string getVolume = @"AudioSwitcher.getAudioDevices()[0].volume()"; var orignalVol = engine.Evaluate <int>(getVolume); string setToOriginal = @"AudioSwitcher.getAudioDevices()[0].volume(" + orignalVol + ")"; //unmutes Assert.Equal(10, engine.Evaluate <int>(setTo10)); Assert.Equal(10, engine.Evaluate <int>(getVolume)); Assert.Equal(orignalVol, engine.Evaluate <int>(setToOriginal)); }
public void AudioSwitcher_getAudioDeviceByName_Recording_Flags() { var engine = new ScriptEngine(); engine.AddAudioSwitcherLibrary(GetAudioContext()); const string js = @"AudioSwitcher.getAudioDevice(AudioSwitcher.getAudioDevices(2)[0].name, 2);"; Assert.DoesNotThrow(() => engine.Execute(js)); var audioDevice = engine.Evaluate <JavaScriptAudioDevice>("AudioSwitcher.getAudioDevices(2)[0]"); var resolvedAudioDevice = engine.Evaluate <JavaScriptAudioDevice>(js); Assert.NotEqual(null, resolvedAudioDevice); Assert.Equal(audioDevice.ID, resolvedAudioDevice.ID); Assert.IsType <JavaScriptAudioDevice>(resolvedAudioDevice); }