public void GetAudioSourceConfigurationOptionsTest() { RunTest(() => { Profile[] profiles = GetProfiles(); Assert(profiles != null && profiles.Length > 0, "DUT did not return any profile", "Check if the DUT returned media profiles"); AudioSourceConfiguration[] configurations = GetAudioSourceConfigurations(); Assert(configurations != null && configurations.Length > 0, "DUT did not return any configuration", "Check if the DUT returned configurations"); AudioSourceConfigurationOptions options = GetAudioSourceConfigurationOptions(null, configurations[0].token, string.Format("Get Audio source configuration options for configuration [token='{0}']", configurations[0].token)); options = GetAudioSourceConfigurationOptions(profiles[0].token, null, string.Format("Get Audio source configuration options for profile [token='{0}']", profiles[0].token)); options = GetAudioSourceConfigurationOptions(profiles[0].token, configurations[0].token, string.Format("Get Audio source configuration options for configuration [token='{0}'] and profile [token = '{1}']", configurations[0].token, profiles[0].token)); options = GetAudioSourceConfigurationOptions(null, null, "Get Audio source configuration options (empty message)"); }); }
private void show_btn_Click(object sender, RoutedEventArgs e) { AudioSourceConfigurationOptions audioOpt = media.GetAudioSourceConfigurationOptions(null, null); string configsStr = JsonConvert.SerializeObject(audioOpt, Formatting.Indented); io = new InfoOption(configsStr); io.Show(); }
public void ProfilesAudioSourceConfigurationAndConfigurationOptionsConsistencyTest() { RunTest(() => { Profile[] profiles = GetProfiles(); Assert(profiles != null, "DUT did not return any profile", "Check if the DUT returned media profiles"); foreach (Profile profile in profiles) { if (profile.AudioSourceConfiguration != null) { AudioSourceConfigurationOptions options = GetAudioSourceConfigurationOptions(profile.token, profile.AudioSourceConfiguration.token); Assert(options != null, "No configuration options received", "Check that the DUT sent audio source configuration options"); Assert(options.InputTokensAvailable != null, "Input tokens available not specified", "Check that input tokens list is not empty"); // check that tokens are unique List <string> duplicates = new List <string>(); List <string> tokens = new List <string>(); foreach (string inputToken in options.InputTokensAvailable) { if (tokens.Contains(inputToken)) { if (!duplicates.Contains(inputToken)) { duplicates.Add(inputToken); } } else { tokens.Add(inputToken); } } StringBuilder sb = new StringBuilder("The following input tokens in InputTokensAvailable are not unique: "); bool first = true; foreach (string token in duplicates) { sb.Append(first ? token : string.Format(", {0}", token)); first = false; } Assert((duplicates.Count == 0), sb.ToString(), "Check that input tokens listed are unique"); Assert(options.InputTokensAvailable.Contains(profile.AudioSourceConfiguration.SourceToken), string.Format("Source token specified ('{0}') not found in options", profile.AudioSourceConfiguration.SourceToken), "Check that source token is presented in the list of available input tokens"); } } }); }
public void AudioSourceConfigurationAndConfigurationOptionsConsistencyTest() { RunTest(() => { // Audio source configurations AudioSourceConfiguration[] configurations = GetAudioSourceConfigurations(); Assert(configurations != null, "DUT did not return any configuration", "Check if the DUT returned configurations"); foreach (AudioSourceConfiguration configuration in configurations) { AudioSourceConfigurationOptions options = GetAudioSourceConfigurationOptions(null, configuration.token); Assert(options != null, "DUT did not return audio source configuration options", "Check if the DUT returned audio source configuration options"); Assert(options.InputTokensAvailable != null && options.InputTokensAvailable.Length > 0, "No InputTokensAvailable returned", "Check if the DUT returned available input tokens"); // check that tokens are unique List <string> duplicates = new List <string>(); List <string> tokens = new List <string>(); foreach (string inputToken in options.InputTokensAvailable) { if (tokens.Contains(inputToken)) { if (!duplicates.Contains(inputToken)) { duplicates.Add(inputToken); } } else { tokens.Add(inputToken); } } StringBuilder sb = new StringBuilder("The following input tokens in InputTokensAvailable are not unique: "); bool first = true; foreach (string token in duplicates) { sb.Append(first ? token : string.Format(", {0}", token)); first = false; } Assert((duplicates.Count == 0), sb.ToString(), "Check that input tokens listed are unique"); Assert(options.InputTokensAvailable.Contains(configuration.SourceToken), string.Format("InputTokensAvailable does not contain '{0}'", configuration.SourceToken), string.Format("Check that InputTokensAvailable contains SourceToken")); } }); }
public void AudioSourceConfiguration() { Profile profile = null; RunTest <Profile>( new Backup <Profile>(() => { return(null); }), () => { profile = CreateProfile("testprofilex", null); string reason; Assert(IsEmptyProfile(profile, out reason), reason, Resources.StepValidatingNewProfile_Title); AudioSource[] sources = GetAudioSources(); Assert(ValidateAudioSources(sources, out reason), reason, Resources.StepValidatingAudioSources_Title); AudioSourceConfiguration[] configs = GetAudioSourceConfigurations(); Assert(ValidateAudioSourceConfigs(configs, out reason), reason, Resources.StepValidatingAudioSources_Title); configs = GetCompatibleAudioSourceConfigurations(profile.token); Assert(ValidateAudioSourceConfigs(configs, out reason), reason, Resources.StepValidatingAudioSources_Title); AudioSourceConfiguration config = configs[0]; AddAudioSourceConfiguration(profile.token, config.token); AudioSourceConfigurationOptions options = GetAudioSourceConfigurationOptions(null, config.token); string sourceToken = config.SourceToken; config.SourceToken = "InvalidToken"; //TODO make sure that token is invalid string details = string.Format("Setting invalid configuration (/AudioSourceConfiguration/SourceToken = '{0}')", config.SourceToken); SetInvalidAudioSourceConfiguration(config, false, details); config.SourceToken = sourceToken; SetAudioSourceConfiguration(config, false); AudioSourceConfiguration newConfig = GetAudioSourceConfiguration(config.token); Assert(EqualConfigurations(config, newConfig, out reason), string.Format(Resources.ErrorAudioSourceConfigNotEqual_Format, reason), Resources.StepCompareAudioSourceConfigs_Title); RemoveAudioSourceConfiguration(profile.token); DeleteProfile(profile.token); profile = null; }, (param) => { if (profile != null) { DeleteProfile(profile.token); } }); }
public void AudioSourceConfiguration() { Profile deletedProfile = null; Profile createdProfile = null; Profile modifiedProfile = null; Profile profile = null; RunTest( () => { profile = CreateProfileByAnnex3("testprofileX", null, out deletedProfile, out createdProfile, out modifiedProfile); string reason; Assert(IsEmptyProfile(profile, out reason), reason, Resources.StepValidatingNewProfile_Title); AudioSource[] sources = GetAudioSources(); Assert(ValidateAudioSources(sources, out reason), reason, Resources.StepValidatingAudioSources_Title); AudioSourceConfiguration[] configs = GetAudioSourceConfigurations(); Assert(ValidateAudioSourceConfigs(configs, out reason), reason, Resources.StepValidatingAudioSources_Title); configs = GetCompatibleAudioSourceConfigurations(profile.token); Assert(ValidateAudioSourceConfigs(configs, out reason), reason, Resources.StepValidatingAudioSources_Title); AudioSourceConfiguration config = configs[0]; AddAudioSourceConfiguration(profile.token, config.token); AudioSourceConfigurationOptions options = GetAudioSourceConfigurationOptions(null, config.token); string sourceToken = config.SourceToken; config.SourceToken = "InvalidToken"; //TODO make sure that token is invalid string details = string.Format("Setting invalid configuration (/AudioSourceConfiguration/SourceToken = '{0}')", config.SourceToken); SetInvalidAudioSourceConfiguration(config, false, details); config.SourceToken = sourceToken; SetAudioSourceConfiguration(config, false); AudioSourceConfiguration newConfig = GetAudioSourceConfiguration(config.token); Assert(EqualConfigurations(config, newConfig, out reason), string.Format(Resources.ErrorAudioSourceConfigNotEqual_Format, reason), Resources.StepCompareAudioSourceConfigs_Title); RemoveAudioSourceConfiguration(profile.token); }, () => { RestoreProfileByAnnex3(deletedProfile, createdProfile, modifiedProfile); }); }