Esempio n. 1
0
        public void GetTeamsTest()
        {
            var repo     = new TempoRepository();
            var response = repo.GetTeams();

            Assert.IsNotNull(response);
            Assert.IsTrue(response.results.Count > 0);
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            string startArg = "";
            string endArg   = "";

            if (args.Length == 2)
            {
                startArg = args[0];
                endArg   = args[1];
            }
            ProcessArguments(startArg, endArg);

            var builder = new ConfigurationBuilder()
                          .SetBasePath(Directory.GetCurrentDirectory())
                          .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);

            Configuration = builder.Build();
            TempoRepository.BearerToken = Configuration["TempoApiKey"];

            LoadGrindstoneData();
            LoadTempoData();

            foreach (var timeEntry in TimeEntries)
            {
                PostWorklogsRequests.Add(new PostWorklogsRequest(TempoAccountId, WorkItems.First(x => x.GrindstoneId == timeEntry.WorkItemId), timeEntry, int.Parse(Configuration["TimezoneAdjustment"])));
            }

            foreach (var request in PostWorklogsRequests)
            {
                Console.WriteLine(request.ToString());
            }

            Console.WriteLine("Press Y to continue");
            var answer = Console.ReadKey();

            if (answer.KeyChar.ToString().ToUpper() == "Y")
            {
                Console.WriteLine("\nPosting Data to Tempo...");
                var rep = new TempoRepository();
                foreach (var request in PostWorklogsRequests)
                {
                    Console.WriteLine(request.ToString());
                    if (Configuration["DebugMode"] == "false")
                    {
                        rep.PostWorklog(request);
                    }
                    else
                    {
                        Console.WriteLine("Debug Mode Enabled.  Not Sending.");
                    }
                }
            }


            Console.WriteLine("\nPress any key to exit...");
            Console.ReadKey();
        }
Esempio n. 3
0
        private static void LoadTempoData()
        {
            Console.WriteLine("Loading Tempo Data...");
            var rep   = new TempoRepository();
            var teams = rep.GetTeams();

            Console.WriteLine($"Team Count: {teams.results.Count}");
            var members = new List <Member>();

            foreach (var team in teams.results)
            {
                var teamMembers = rep.GetMembers(team.id);
                members.AddRange(teamMembers.results.Select(x => x.member));
            }
            //Clear out duplicates
            var distinctMembers = members.Distinct(new MemberComparer());

            Console.WriteLine($"Member Count: {distinctMembers.Count()}");
            TempoAccountId = distinctMembers.First(x => x.displayName == Configuration["TempoDisplayName"]).accountId;
            Console.WriteLine($"Tempo Account ID: {TempoAccountId}");

            Console.WriteLine("Loading Tempo Data: Complete!");
        }