Beispiel #1
0
        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);
        }