public async Task <JiraUser> CreateUserAsync(JiraUserCreationInfo user, CancellationToken token = default(CancellationToken)) { var resource = "rest/api/latest/user"; var requestBody = JToken.FromObject(user); return(await _jira.RestClient.ExecuteRequestAsync <JiraUser>(Method.POST, resource, requestBody, token).ConfigureAwait(false)); }
async Task AddAndRemoveWatchersToIssueWithEmailAsUsername(Jira jira) { // Create issue. var issue = jira.CreateIssue("TST"); issue.Type = "1"; issue.Summary = "Test issue with watchers" + _random.Next(int.MaxValue); issue.SaveChanges(); // Create user with e-mail as username. var rand = _random.Next(int.MaxValue); var userInfo = new JiraUserCreationInfo() { Username = $"test{rand}@user.com", DisplayName = $"Test User {rand}", Email = $"test{rand}@user.com", Password = $"MyPass{rand}", }; await jira.Users.CreateUserAsync(userInfo); // Add the user as a watcher on the issue. await issue.AddWatcherAsync(userInfo.Email); // Verify the watchers of the issue contains the username. var watchers = await issue.GetWatchersAsync(); Assert.Contains(watchers, w => string.Equals(w.Username, userInfo.Username)); // Delete user. await jira.Users.DeleteUserAsync(userInfo.Username); }