Example #1
0
        public TfsBuildBuildsResponse builds(TfsBuildBuildsArgs TfsBuildBuildsArgs, IConfigurationRoot configuration)
        {
            string url = string.Format("{0}build/builds{1}", TfsApiClient.BaseAddress, (TfsBuildBuildsArgs == null) ? String.Empty : TfsBuildBuildsArgs.ToString());

            return(TfsApiClient.QueryObject <TfsBuildBuildsResponse>(url, configuration));
        }
Example #2
0
        public static void getTestResultsForBuildsFromTFS(IConfigurationRoot configuration)
        {
            try
            {
                TfsApiClient TfsApiClient = new TfsApiClient(configuration);

                // get definitions and their ID
                TfsBuildDefinitionsArgs TfsBuildDefinitionsArgs = new TfsBuildDefinitionsArgs();
                TfsBuildDefinitionsArgs.apiVersion = "2.0";
                TfsBuildDefinitionsArgs.type       = new List <TFS.Api.Type>()
                {
                    TFS.Api.Type.xaml,
                };
                TfsBuildDefinitionsResponse TfsBuildDefinitionsResponse = TfsApiClient.Builds.Definitions(TfsBuildDefinitionsArgs, configuration);


                //Find the definition that corresponds to the build
                foreach (Build build in builds)
                {
                    Definition Definition = TfsBuildDefinitionsResponse.BuildDefinitions.Find(x => x.Name == build.buildName);

                    if (Definition != null)
                    {
                        // get builds for a definition
                        string             id = Definition.Id;
                        TfsBuildBuildsArgs TfsBuildBuildsArgs = new TfsBuildBuildsArgs();
                        TfsBuildBuildsArgs.apiVersion  = "2.0";
                        TfsBuildBuildsArgs.definitions = new List <string>
                        {
                            id,
                        };
                        TfsBuildBuildsResponse TfsBuildBuildsResponse = TfsApiClient.Builds.builds(TfsBuildBuildsArgs, configuration);


                        // get the Latest Sonar Build


                        Element element = TfsBuildBuildsResponse.Elements.FirstOrDefault(x => x.BuildNumber.StartsWith("Sonar_") == true);
                        if (element != null)
                        {
                            // get testResults for a build
                            TfsTestRunsArgs TfsTestRunsArgs = new TfsTestRunsArgs();
                            TfsTestRunsArgs.apiVersion = "2.0";
                            TfsTestRunsArgs.BuildId    = element.Id;
                            TfsTestRunsResponse TfsTestRunsResponse = TfsApiClient.Test.Runs(TfsTestRunsArgs, configuration);

                            if (TfsTestRunsResponse.TestResult.Count != 0)
                            {
                                //Fill test attributes of the build

                                build.Totaltests  = TfsTestRunsResponse.TestResult[0].Totaltests;
                                build.PassedTests = TfsTestRunsResponse.TestResult[0].PassedTests;
                            }
                            else
                            {
                                build.Totaltests  = "0";
                                build.PassedTests = "0";
                            }
                        }
                    }
                }
            }
            catch (Exception e)
            {
                string error = "Exception Occre while Inserting in table:" + e.Message + "\t" + e.GetType();
            }
        }