public void JiraTimeToTimeSpan_ParsesJiraStyleTimespan()
 {
     Assert.AreEqual(120, JiraTimeHelpers.JiraTimeToTimeSpan("2h").Value.TotalMinutes);
     Assert.AreEqual(125, JiraTimeHelpers.JiraTimeToTimeSpan("2h 5m").Value.TotalMinutes);
     Assert.AreEqual(5, JiraTimeHelpers.JiraTimeToTimeSpan("5m").Value.TotalMinutes);
     Assert.AreEqual(0, JiraTimeHelpers.JiraTimeToTimeSpan("0").Value.TotalMinutes);
 }
Beispiel #2
0
 public void TimeSpanToJira_FormatsDaysHoursMinutes()
 {
     Assert.That(JiraTimeHelpers.TimeSpanToJiraTime(new TimeSpan(12, 7, 0)), Is.EqualTo("12h 7m"));
     Assert.That(JiraTimeHelpers.TimeSpanToJiraTime(new TimeSpan(9, 15, 0)), Is.EqualTo("9h 15m"));
     Assert.That(JiraTimeHelpers.TimeSpanToJiraTime(new TimeSpan(1, 2, 5, 0)), Is.EqualTo("1d 2h 5m"));
     Assert.That(JiraTimeHelpers.TimeSpanToJiraTime(new TimeSpan(21, 4, 0, 0)), Is.EqualTo("21d 4h 0m"));
 }
        public void CreatePostWorklogRequest_CreatesValidRequest()
        {
            string   key     = "FOO-42";
            TimeSpan time    = new TimeSpan(1, 2, 0);
            string   comment = "Sorry for the inconvenience...";
            var      request = jiraApiRequestFactory.CreatePostWorklogRequest(key, time, comment);

            requestFactoryMock.Verify(m => m.Create(String.Format("/rest/api/2/issue/{0}/worklog", key), Method.POST));

            requestMock.VerifySet(m => m.RequestFormat = DataFormat.Json);

            requestMock.Verify(m => m.AddBody(It.Is <object>(o =>
                                                             o.GetHashCode() == (new {
                timeSpent = JiraTimeHelpers.TimeSpanToJiraTime(time),
                comment = comment
            }).GetHashCode()
                                                             )));
        }
        public void DateTimeToJiraDateTime_IgnoreRegionalSettings()
        {
            var currentCulture   = Thread.CurrentThread.CurrentCulture;
            var currentUICulture = Thread.CurrentThread.CurrentUICulture;

            try
            {
                Thread.CurrentThread.CurrentCulture   = new CultureInfo("bn-BD");
                Thread.CurrentThread.CurrentUICulture = new CultureInfo("bn-BD");
                var s = JiraTimeHelpers.DateTimeToJiraDateTime(DateTimeOffset.Now);
                Assert.That(JiraTimeHelpers.DateTimeToJiraDateTime(new DateTimeOffset(2015, 09, 20, 16, 40, 51, TimeSpan.Zero)), Is.EqualTo("2015-09-20T16:40:51.000+0000"));
                Assert.That(JiraTimeHelpers.DateTimeToJiraDateTime(new DateTimeOffset(2015, 09, 20, 16, 40, 51, TimeSpan.FromHours(1))), Is.EqualTo("2015-09-20T16:40:51.000+0100"));
                Assert.That(JiraTimeHelpers.DateTimeToJiraDateTime(new DateTimeOffset(2015, 09, 20, 16, 40, 51, TimeSpan.FromMinutes(9 * 60 + 30))), Is.EqualTo("2015-09-20T16:40:51.000+0930"));
            }
            finally
            {
                Thread.CurrentThread.CurrentCulture   = currentCulture;
                Thread.CurrentThread.CurrentUICulture = currentUICulture;
            }
        }
Beispiel #5
0
        public void CreatePostWorklogRequest_CreatesValidRequest()
        {
            string   key     = "FOO-42";
            var      started = new DateTimeOffset(2016, 07, 26, 1, 44, 15, TimeSpan.Zero);
            TimeSpan time    = new TimeSpan(1, 2, 0);
            string   comment = "Sorry for the inconvenience...";

            StopWatch.EstimateUpdateMethods adjusmentMethod = EstimateUpdateMethods.Auto;
            string adjustmentValue = "";
            var    request         = jiraApiRequestFactory.CreatePostWorklogRequest(key, started, time, comment, adjusmentMethod, adjustmentValue);

            requestFactoryMock.Verify(m => m.Create(String.Format("/rest/api/2/issue/{0}/worklog", key), Method.POST));

            requestMock.VerifySet(m => m.RequestFormat = DataFormat.Json);

            requestMock.Verify(m => m.AddBody(It.Is <object>(o =>
                                                             o.GetHashCode() == (new {
                timeSpent = JiraTimeHelpers.TimeSpanToJiraTime(time),
                started = "2016-07-26T01:44:15.000+0000",
                comment = comment
            }).GetHashCode()
                                                             )));
        }
Beispiel #6
0
 public void JiraTimeToTimeSpan_AllowsNoWhitespace()
 {
     Assert.AreEqual(125, JiraTimeHelpers.JiraTimeToTimeSpan("2h5m").Value.TotalMinutes);
     Assert.AreEqual(1565, JiraTimeHelpers.JiraTimeToTimeSpan("1d2h5m").Value.TotalMinutes);
 }
Beispiel #7
0
 public void JiraTimeToTimeSpan_InvalidHoursFails()
 {
     Assert.AreEqual(0, JiraTimeHelpers.JiraTimeToTimeSpan("h").TotalMilliseconds);
     Assert.AreEqual(0, JiraTimeHelpers.JiraTimeToTimeSpan("8 h").TotalMilliseconds);
 }
Beispiel #8
0
 public void JiraTimeToTimeSpan_AllowsMinutesBeforeHours()
 {
     Assert.AreEqual(125, JiraTimeHelpers.JiraTimeToTimeSpan("5m 2h").Value.TotalMinutes);
 }
Beispiel #9
0
 public void JiraTimeToTimeSpan_AllowsSillyValues()
 {
     Assert.AreEqual(120, JiraTimeHelpers.JiraTimeToTimeSpan("2h 0m").Value.TotalMinutes);
     Assert.AreEqual(5, JiraTimeHelpers.JiraTimeToTimeSpan("0h 5m").Value.TotalMinutes);
 }
Beispiel #10
0
 public void JiraTimeToTimeSpan_ParsesDecimalHours()
 {
     Assert.AreEqual(150, JiraTimeHelpers.JiraTimeToTimeSpan("2.5h").Value.TotalMinutes);
 }
Beispiel #11
0
 public void JiraTimeToTimeSpan_IgnoresDecimalValueForMinutes()
 {
     Assert.AreEqual(600, JiraTimeHelpers.JiraTimeToTimeSpan("10.5m").Value.TotalSeconds);
 }
Beispiel #12
0
 public void JiraTimeToTimeSpan_InvalidMinutesFails()
 {
     Assert.IsNull(JiraTimeHelpers.JiraTimeToTimeSpan("m"));
     Assert.IsNull(JiraTimeHelpers.JiraTimeToTimeSpan("2 m"));
 }
Beispiel #13
0
 public void JiraTimeToTimeSpan_InvalidHoursFails()
 {
     Assert.IsNull(JiraTimeHelpers.JiraTimeToTimeSpan("h"));
     Assert.IsNull(JiraTimeHelpers.JiraTimeToTimeSpan("8 h"));
 }
Beispiel #14
0
 public void JiraTimeToTimeSpan_ValidHoursWithInvalidMinutesFails()
 {
     Assert.AreEqual(0, JiraTimeHelpers.JiraTimeToTimeSpan("2h 5").TotalMilliseconds);
     Assert.AreEqual(0, JiraTimeHelpers.JiraTimeToTimeSpan("2h m").TotalMilliseconds);
 }
Beispiel #15
0
 public void DateTimeToJiraDateTime_HandlesTimeZones()
 {
     Assert.That(JiraTimeHelpers.DateTimeToJiraDateTime(new DateTimeOffset(2015, 09, 20, 16, 40, 51, TimeSpan.Zero)), Is.EqualTo("2015-09-20T16:40:51.000+0000"));
     Assert.That(JiraTimeHelpers.DateTimeToJiraDateTime(new DateTimeOffset(2015, 09, 20, 16, 40, 51, TimeSpan.FromHours(1))), Is.EqualTo("2015-09-20T16:40:51.000+0100"));
     Assert.That(JiraTimeHelpers.DateTimeToJiraDateTime(new DateTimeOffset(2015, 09, 20, 16, 40, 51, TimeSpan.FromMinutes(9 * 60 + 30))), Is.EqualTo("2015-09-20T16:40:51.000+0930"));
 }
Beispiel #16
0
 public void JiraTimeToTimeSpan_AllowsDays()
 {
     Assert.AreEqual(1565, JiraTimeHelpers.JiraTimeToTimeSpan("1d 2h 5m").Value.TotalMinutes);
     Assert.AreEqual(1560, JiraTimeHelpers.JiraTimeToTimeSpan("1d 2h").Value.TotalMinutes);
     Assert.AreEqual(1445, JiraTimeHelpers.JiraTimeToTimeSpan("1d 5m").Value.TotalMinutes);
 }
Beispiel #17
0
 public void JiraTimeToTimeSpan_AllowsMultipleWhitespace()
 {
     Assert.AreEqual(65, JiraTimeHelpers.JiraTimeToTimeSpan("1h      5m").TotalMinutes);
     Assert.AreEqual(125, JiraTimeHelpers.JiraTimeToTimeSpan("    2h   5m    ").TotalMinutes);
 }
Beispiel #18
0
 public void JiraTimeToTimeSpan_InvalidMinutesFails()
 {
     Assert.AreEqual(0, JiraTimeHelpers.JiraTimeToTimeSpan("m").TotalMilliseconds);
     Assert.AreEqual(0, JiraTimeHelpers.JiraTimeToTimeSpan("2 m").TotalMilliseconds);
 }