示例#1
0
        public static string GetStringFromCustomSettings(string key)
        {
            AQALogger logger = new AQALogger();

            AutomationSet keyVal = settings.Configs.Find(x => x.Key == key);

            if (keyVal == default(AutomationSet) || string.IsNullOrEmpty(keyVal.Key))
            {
                logger.LogError($"Key requested ({key}) which is not defined in the settings file or is invalid.{(hostPlatform == HostPlatform.Cloud ? " Make sure you are supplying the expected settings config file name to DeviceFarmConfig." : string.Empty)}");
            }
            return(keyVal.Value);
        }
示例#2
0
        public static bool GetBooleanFromCustomSettings(string key)
        {
            AQALogger logger = new AQALogger();

            AutomationSet keyVal    = settings.Configs.Find(x => x.Key == key);
            bool          returnVal = false;

            if (keyVal == default(AutomationSet) || !bool.TryParse(keyVal.Value, out returnVal))
            {
                logger.LogError($"Key requested ({key}) which is not defined in the settings file or is invalid.{(hostPlatform == HostPlatform.Cloud ? " Make sure you are supplying the expected settings config file name to DeviceFarmConfig." : string.Empty)}");
            }
            return(returnVal);
        }
示例#3
0
        static AutomatedQARuntimeSettings()
        {
#if UNITY_EDITOR
            if (!Directory.Exists(Path.Combine(Application.dataPath, AutomatedQASettingsResourcesPath)))
            {
                Directory.CreateDirectory(Path.Combine(Application.dataPath, AutomatedQASettingsResourcesPath));
            }
#endif
            // Handle required configs. Re-add them if deleted from config settings file.
            List <AutomationSet> setsToReAddToConfigSettingsFile = new List <AutomationSet>();

            string        settingKey = Keys.RecordingFolderName;
            AutomationSet set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, RecordingFolderName);
                setsToReAddToConfigSettingsFile.Add(set);
            }
            RecordingFolderName = set.Value.ToString();

            settingKey = Keys.ActivatePlaybackVisualFx;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, ActivatePlaybackVisualFx.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            ActivatePlaybackVisualFx = bool.Parse(set.Value.ToString());

            settingKey = Keys.ActivateClickFeedbackFx;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, ActivateClickFeedbackFx.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            ActivateClickFeedbackFx = bool.Parse(set.Value.ToString());

            settingKey = Keys.ActivateDragFeedbackFx;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, ActivateDragFeedbackFx.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            ActivateDragFeedbackFx = bool.Parse(set.Value.ToString());

            settingKey = Keys.ActivateHighlightFeedbackFx;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, ActivateHighlightFeedbackFx.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            ActivateHighlightFeedbackFx = bool.Parse(set.Value.ToString());

            settingKey = Keys.EnableScreenshots;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, EnableScreenshots.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            EnableScreenshots = bool.Parse(set.Value.ToString());

            settingKey = Keys.PostActionScreenshotDelay;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, PostActionScreenshotDelay.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            PostActionScreenshotDelay = float.Parse(set.Value.ToString());

            settingKey = Keys.UseDynamicWaits;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, UseDynamicWaits.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            UseDynamicWaits = bool.Parse(set.Value.ToString());

            settingKey = Keys.DynamicWaitTimeout;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, DynamicWaitTimeout.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            DynamicWaitTimeout = float.Parse(set.Value.ToString());

            settingKey = Keys.DynamicLoadSceneTimeout;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, DynamicLoadSceneTimeout.ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            DynamicLoadSceneTimeout = float.Parse(set.Value.ToString());

            settingKey = Keys.LogLevel;
            set        = settings.Configs.Find(c => c.Key == settingKey);
            if (set == null || set == default(AutomationSet))
            {
                set = new AutomationSet(settingKey, ((int)LogLevel).ToString());
                setsToReAddToConfigSettingsFile.Add(set);
            }
            LogLevel = Enum.TryParse <AQALogger.LogLevel>(set.Value.ToString(), out AQALogger.LogLevel i) ? i : AQALogger.LogLevel.Info;

#if UNITY_EDITOR
            // Add back any required configs that were deleted by the user.
            if (setsToReAddToConfigSettingsFile.Any())
            {
                AutomatedQASettingsData newConfig = new AutomatedQASettingsData();
                newConfig.Configs.AddRange(setsToReAddToConfigSettingsFile);
                newConfig.Configs.AddRange(settings.Configs);
                File.WriteAllText(Path.Combine(Application.dataPath, AutomatedQASettingsResourcesPath, AutomatedQaSettingsFileName), JsonUtility.ToJson(newConfig));
            }
#endif
        }