public void GetPlasticTask_ShouldReturnLinkedTask() { var svc = new YouTrackService(getTestConfig()); var expectedIssueKey = ConfigurationManager.AppSettings["test.issueKey"]; var actualTask = svc.GetPlasticTask(expectedIssueKey); Assert.IsNotNull(actualTask); Assert.AreEqual(expectedIssueKey, actualTask.Id); Assert.IsTrue(actualTask.CanBeLinked); }
public void GetUnresolvedIssuesByAssignee_ShouldReturnTicketsForAssignee() { var config = getTestConfig(); var svc = new YouTrackService(config); var assigneeName = ConfigurationManager.AppSettings["test.fieldValue"]; var issues = svc.GetUnresolvedPlasticTasks(assigneeName).ToList(); CollectionAssert.IsNotEmpty(issues); Assert.IsTrue(issues.All(pIssue => pIssue.Owner.Equals(assigneeName, StringComparison.InvariantCultureIgnoreCase))); }
public void AssignIssue_ShouldUpdateTicketToAssigned() { var config = getTestConfig(); var svc = new YouTrackService(config); svc.Authenticate(); Assert.IsNotNull(svc.GetAuthenticatedUser()); var testIssueID = ConfigurationManager.AppSettings["test.issueKey"]; svc.AssignIssue(testIssueID, "dbustamante"); }
public void BeginWorkOnIssue_ShouldUpdateTicketToInProgress() { var config = getTestConfig(); var svc = new YouTrackService(config); svc.Authenticate(); Assert.IsNotNull(svc.GetAuthenticatedUser()); var testIssueID = ConfigurationManager.AppSettings["test.issueKey"]; svc.EnsureIssueInProgress(testIssueID); }
public static void Initialize(Settings settings) { Verify.IsNotNull(settings, "settings"); _settings = settings; YouTrackService = new YouTrackService("https://youtrack.hbo.com/youtrack", settings.CookieContainer); ViewModel = new ViewModel(); _timer = new DispatcherTimer(DispatcherPriority.Normal, Application.Current.Dispatcher) { Interval = _PollInterval, }; _timer.Tick += (sender, e) => _UpdateQueryCounts(); }
public void GetAuthenticatedUser_ShouldReturnUserWithEmail() { var svc = new YouTrackService(getTestConfig()); svc.Authenticate(); var user = svc.GetAuthenticatedUser(); Assert.IsNotNull(user); var expectedValue = ConfigurationManager.AppSettings["test.authUserEmail"]; var actualValue = user.Email; Assert.AreEqual(expectedValue, actualValue); }
public void TestCommentFormatting() { var host = "acme.website.int:5656/"; var webGui = new Uri($"https://{host}"); var repository = "Test.Repository"; var branch = "/yt_TEST-60"; long changeSetId = 969; var comment = "This is my test comment"; var nl = Environment.NewLine; var guid = Guid.NewGuid(); var generatedComment = YouTrackService.FormatComment(host, repository, webGui, branch, changeSetId, comment, guid); var mdComment = $"{{color:darkgreen}}*PSCM - CODE COMMIT #{changeSetId}*{{color}}"; var changeSetUriBuilder = new UriBuilder(webGui); if (string.IsNullOrEmpty(changeSetUriBuilder.Scheme) || (!changeSetUriBuilder.Scheme.Equals("https", StringComparison.CurrentCultureIgnoreCase) && !changeSetUriBuilder.Scheme.Equals("http", StringComparison.CurrentCultureIgnoreCase))) { changeSetUriBuilder.Scheme = "http"; } changeSetUriBuilder.Path = $"webui/repos/{repository}/diff/changeset/{guid}"; var hostName = host.StartsWith("localhost", StringComparison.CurrentCultureIgnoreCase) || host.StartsWith("127.0.0.", StringComparison.CurrentCultureIgnoreCase) ? Environment.MachineName + (host.Contains(":") ? host.Substring(host.IndexOf(":")) : "") : host; var tildes = "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"; var commentBuilder = new StringBuilder(); commentBuilder.Append($"{comment}{nl}{nl}"); commentBuilder.Append($"{tildes}{nl}"); commentBuilder.Append($"[{mdComment}|{changeSetUriBuilder}]{nl}"); //commentBuilder.Append($"{{monospace}}"); commentBuilder.Append($"{guid} @ {branch} @ {repository} @ {hostName}"); //commentBuilder.Append($"{{monospace}}"); var expectedComment = commentBuilder.ToString(); Console.WriteLine("\nActual:\n" + generatedComment); Assert.AreEqual(expectedComment, generatedComment); }
public void HydratePlasticTask_Base() { var facade = GetConfigFacade("http://test.com"); facade.SetupGet(x => x.ShowIssueStateInBranchTitle).Returns(false); facade.SetupGet(x => x.IgnoreIssueStateForBranchTitle).Returns(""); var sut = new YouTrackService(facade.Object); dynamic issue = new Issue(); issue.Id = "ABC1234"; issue.Summary = "Issue Summary"; issue.State = "In Progress"; issue.AssigneeName = "jdoe"; issue.Description = "Issue Description"; var task = sut.hydratePlasticTaskFromIssue(issue); Assert.AreEqual("ABC1234", task.Id); Assert.AreEqual("Issue Summary", task.Title); Assert.AreEqual("In Progress", task.Status); Assert.AreEqual("jdoe", task.Owner); Assert.AreEqual("Issue Description", task.Description); }
public ClockifyYouTrackSynchronizerController(AssociationsManager associationsManager, YouTrackService youTrackService) { _youTrackService = youTrackService; _associationsManager = associationsManager; }
public GoToYouTrackIssueProvider(YouTrackService yt) { this.yt = yt; }
internal static void ShowQuery(YouTrackService.SavedSearch scope, string query) { Process.Start(YouTrackService.GetQueryUri(scope, query).ToString()); }
internal static void ShowIssue(YouTrackService.IssueSummary issue) { Process.Start(YouTrackService.GetIssueUri(issue).ToString()); }
public void TestMarkTaskAsOpen_Comment() { var msg = "{color:darkgreen}*PSCM - BRANCH CREATED*{color}"; Assert.AreEqual(msg, YouTrackService.GetBranchCreationMessage()); }