Ejemplo n.º 1
0
        public static Tuple <DeviceSet.Platform, string> ParseArgs(string input)
        {
            string[] deviceArgs = input.Split(new[] { " " }, StringSplitOptions.RemoveEmptyEntries);
            if (deviceArgs.Length != 2)
            {
                Console.WriteLine("!!! Invalid upload paramters, should be <Platform> <Category> : You entered : " + input);
                return(null);
            }

            DeviceSet.Platform platform = deviceArgs[0] == "Android" ? DeviceSet.Platform.Android : DeviceSet.Platform.IOs;
            string             category = deviceArgs[1];

            return(Tuple.Create(platform, category));
        }
Ejemplo n.º 2
0
        static string BuildExecutionString(DeviceSet.Platform platform, DeviceSet deviceSet, IEnumerable <string> categories,
                                           string series, string account, string user, string outputFile = null, IEnumerable <string> excludeCategories = null)
        {
            var stringBuilder = new StringBuilder();

            stringBuilder.Append(ConsolePath);
            stringBuilder.Append(" submit ");

            switch (platform)
            {
            case DeviceSet.Platform.Android:
                stringBuilder.Append(ApkPath);
                break;

            case DeviceSet.Platform.IOs:
                stringBuilder.Append(IpaPath);
                break;

            case DeviceSet.Platform.IOsClassic:
                stringBuilder.Append(IpaClassicPath);
                break;
            }

            stringBuilder.Append(" ");
            stringBuilder.Append(account);
            stringBuilder.Append(" --user ");
            stringBuilder.Append(user);
            stringBuilder.Append(" --devices ");
            stringBuilder.Append(deviceSet.Id);

            foreach (var category in categories)
            {
                stringBuilder.Append($" --include {category}");
            }

            if (excludeCategories != null)
            {
                foreach (var category in excludeCategories)
                {
                    stringBuilder.Append($" --exclude {category}");
                }
            }

            if (!string.IsNullOrEmpty(series))
            {
                stringBuilder.Append(" --series ");
                stringBuilder.Append(series);
            }

            stringBuilder.Append(" --locale \"en_US\"");

            switch (platform)
            {
            case DeviceSet.Platform.Android:
                stringBuilder.Append(" --app-name \"AndroidControlGallery\"");
                break;

            case DeviceSet.Platform.IOs:
            case DeviceSet.Platform.IOsClassic:
                stringBuilder.Append(" --app-name \"XamControl\"");
                break;
            }

            stringBuilder.Append(" --assembly-dir ");

            if (platform == DeviceSet.Platform.Android)
            {
                stringBuilder.Append(AndroidTestingDirectory);
            }
            else
            {
                stringBuilder.Append(iOSTestingDirectory);
            }

            stringBuilder.Append(" --fixture-chunk");

            if (!string.IsNullOrEmpty(outputFile))
            {
                stringBuilder.Append($" --nunit-xml {outputFile}");
            }

            return(stringBuilder.ToString());
        }