コード例 #1
0
        public void CoverallsData_PullRequestId_PullsFromGitData()
        {
            Environment.SetEnvironmentVariable("APPVEYOR_PULL_REQUEST_NUMBER", "b31f08d07ae564b08237e5a336e478b24ccc4a65");
            var git = new AppVeyorGit();

            var coverallsData = new CoverallsData
            {
                ServiceName  = "ServiceName",
                ServiceJobId = "JobId",
                RepoToken    = "b31f08d07ae564b08237e5a336e478b24ccc4a65",
                SourceFiles  = (new List <CoverageFile>()).ToArray(),
                Git          = git.Data
            };

            coverallsData.ServicePullRequest.Should().Be("b31f08d07ae564b08237e5a336e478b24ccc4a65");
        }
コード例 #2
0
        public void CoverallsData_NullPullRequestId_IsNotInJSON()
        {
            var git = new AppVeyorGit();

            var coverallsData = new CoverallsData
            {
                ServiceName  = "ServiceName",
                ServiceJobId = "JobId",
                RepoToken    = "b31f08d07ae564b08237e5a336e478b24ccc4a65",
                SourceFiles  = (new List <CoverageFile>()).ToArray(),
                Git          = git.Data
            };

            var json = JsonConvert.SerializeObject(coverallsData);

            json.Should().NotContain("service_pull_request");
        }
コード例 #3
0
        public void CoverallsData_FilledPullRequestId_IsInJSON()
        {
            Environment.SetEnvironmentVariable("APPVEYOR_PULL_REQUEST_NUMBER", "b31f08d07ae564b08237e5a336e478b24ccc4a65");
            var git = new AppVeyorGit();

            var coverallsData = new CoverallsData
            {
                ServiceName  = "ServiceName",
                ServiceJobId = "JobId",
                RepoToken    = "b31f08d07ae564b08237e5a336e478b24ccc4a65",
                SourceFiles  = (new List <CoverageFile>()).ToArray(),
                Git          = git.Data
            };

            var json = JsonConvert.SerializeObject(coverallsData);

            json.Should().Contain("service_pull_request");
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: appveyor/coveralls.net
        internal static void Main(string[] args)
        {
            Options = Parser.Default.ParseArguments <CommandLineOptions>(args).Value;

            if (Options.DebugMode)
            {
                Console.WriteLine("[debug] > $env.COVERALLS_REPO_TOKEN: {0}",
                                  Environment.GetEnvironmentVariable("COVERALLS_REPO_TOKEN"));
            }

            try
            {
                var coveralls = new CoverallsBootstrap(Options)
                {
                    FileSystem = new LocalFileSystem()
                };

                // Use specified repo token over Environment variable
                if (Options.CoverallsRepoToken.IsNotBlank())
                {
                    coveralls.RepoToken = Options.CoverallsRepoToken;
                }

                if (!coveralls.CoverageFiles.Any())
                {
                    Console.WriteLine("No coverage statistics files.");
                    return;
                }

                if (coveralls.RepoToken.IsBlank())
                {
                    Console.WriteLine("Blank or invalid Coveralls Repo Token.");

                    if (coveralls.ServiceName == "appveyor")
                    {
                        Console.WriteLine(" - Did you prefix your token with 'secure:' without encrypting it?");
                        Console.WriteLine(" - Is this a Pull Request? AppVeyor does not decrypt environment variables for pull requests.");
                    }
                    return;
                }

                var sourceFiles = coveralls.CoverageFiles;
                foreach (var file in sourceFiles)
                {
                    file.Path = file.Path.ToRelativePath(Directory.GetCurrentDirectory());
                }

                var coverallsData = new CoverallsData
                {
                    ServiceName  = coveralls.ServiceName,
                    ServiceJobId = coveralls.ServiceJobId,
                    RepoToken    = coveralls.RepoToken,
                    SourceFiles  = coveralls.CoverageFiles.ToArray(),
                    Git          = coveralls.Repository.Data
                };

                Console.WriteLine("     Service: {0}", coverallsData.ServiceName);
                Console.WriteLine("      Job ID: {0}", coverallsData.ServiceJobId);
                Console.WriteLine("       Files: {0}", coverallsData.SourceFiles.Count());
                Console.WriteLine("      Commit: {0}", coverallsData.Git.Head.Id);
                Console.WriteLine("Pull Request: {0}", coverallsData.Git.Head.Id);

                var json = JsonConvert.SerializeObject(coverallsData);
                SendToCoveralls(json);
            }
            catch (Exception e)
            {
                Console.Error.WriteLine(e.Message);
                if (e.InnerException != null)
                {
                    Console.Error.WriteLine(e.InnerException.Message);
                }

                Environment.Exit(1);
            }
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: kbilsted/coveralls.net
        static void Main(string[] args)
        {
            Options = Parser.Default.ParseArguments <CommandLineOptions>(args).Value;

            try
            {
                var coveralls = new CoverallsBootstrap(Options)
                {
                    FileSystem = new LocalFileSystem()
                };

                if (!coveralls.CoverageFiles.Any())
                {
                    Console.WriteLine("No coverage statistics files.");
                    return;
                }

                if (Options.DebugMode)
                {
                    Console.WriteLine("[debug] repotoken: '" + coveralls.RepoToken + "'");
                }

                if (coveralls.RepoToken.IsBlank())
                {
                    Console.WriteLine("Blank or invalid Coveralls Repo Token. "
                                      + "Did you prefix your token with 'secure:' without encrypting it?");
                    return;
                }

                var sourceFiles = coveralls.CoverageFiles;
                foreach (var file in sourceFiles)
                {
                    file.Path = file.Path.ToRelativePath(Directory.GetCurrentDirectory());
                }

                var coverallsData = new CoverallsData
                {
                    ServiceName  = coveralls.ServiceName,
                    ServiceJobId = coveralls.ServiceJobId,
                    RepoToken    = coveralls.RepoToken,
                    SourceFiles  = coveralls.CoverageFiles.ToArray(),
                    Git          = coveralls.Repository.Data
                };

                Console.WriteLine("Service: {0}", coverallsData.ServiceName);
                Console.WriteLine(" Job ID: {0}", coverallsData.ServiceJobId);
                Console.WriteLine("  Files: {0}", coverallsData.SourceFiles.Length);
                Console.WriteLine(" Commit: {0}", coverallsData.Git.Head.Id);

                var json = JsonConvert.SerializeObject(coverallsData);
                SendToCoveralls(json);
            }
            catch (Exception e)
            {
                Console.Error.WriteLine(e.Message);
                if (e.InnerException != null)
                {
                    Console.Error.WriteLine(e.InnerException.Message);
                }

                Environment.Exit(1);
            }
        }