public async Task get_sprint_query_succeeds_when_sprint_exists()
        {
            var sprintId    = "sprintKey" + Guid.NewGuid();
            var title       = "Title";
            var description = "description";
            var projectId   = "projectKey" + Guid.NewGuid();
            var createdAt   = DateTime.Now;
            var startedAt   = DateTime.MinValue;
            var startDate   = DateTime.MinValue;
            var endDate     = DateTime.MaxValue;
            var endedAt     = DateTime.MaxValue;

            var sprint = new Sprint(sprintId, title, description, projectId, null, createdAt, startedAt, startDate, endDate, endedAt);

            await _sprintMongoDbFixture.InsertAsync(sprint.AsDocument());


            var query = new GetSprint(sprintId);

            // Check if exception is thrown

            var requestResult = _queryHandler
                                .Awaiting(c => c.HandleAsync(query));

            requestResult.Should().NotThrow();

            var result = await requestResult();

            result.Should().NotBeNull();
            result.Id.Should().Be(sprintId);
            result.Title.Should().Be(title);
            result.Description.Should().Be(description);
        }
        public async Task get_user_query_succeeds_when_user_exists()
        {
            var id            = Guid.NewGuid();
            var email         = "*****@*****.**";
            var fullname      = "fullname";
            var password      = "******";
            var pic           = "test.nl/image";
            var role          = Role.User;
            var securityStamp = new Guid().ToString();

            // Add user
            var user = new User(id, email, fullname, pic, password, role, securityStamp, 0, DateTime.MinValue, DateTime.UtcNow,
                                new string[] { });
            await _mongoDbFixture.InsertAsync(user.AsDocument());


            var query = new GetUser(user.Id);

            // Check if exception is thrown

            var requestResult = _queryHandler
                                .Awaiting(c => c.HandleAsync(query));

            requestResult.Should().NotThrow();

            var result = await requestResult();

            result.Should().NotBeNull();
            result.Id.Should().Be(user.Id);
            result.Email.Should().Be(user.Email);
            result.Fullname.Should().Be(user.Fullname);
            result.Pic.Should().Be(user.Pic);
            result.Role.Should().Be(user.Role);
        }
        public async Task get_users_by_ids_query_can_filter_based_on_ids_when_a_user_exists()
        {
            var id             = Guid.NewGuid();
            var id1            = Guid.NewGuid();
            var id2            = Guid.NewGuid();
            var email          = "*****@*****.**";
            var email1         = "*****@*****.**";
            var email2         = "*****@*****.**";
            var fullname       = "fullname";
            var filterFullname = "filter";
            var password       = "******";
            var pic            = "test.nl/image";
            var role           = Role.User;
            var securityStamp  = new Guid().ToString();

            // Add users
            var user = new User(id, email, fullname, pic, password, role, securityStamp, 0, DateTime.MinValue, DateTime.UtcNow,
                                new string[] { });
            var user1 = new User(id1, email1, filterFullname, pic, password, role, securityStamp, 0, DateTime.MinValue, DateTime.UtcNow,
                                 new string[] { });
            var user2 = new User(id2, email2, filterFullname, pic, password, role, securityStamp, 0, DateTime.MinValue, DateTime.UtcNow,
                                 new string[] { });

            await _mongoDbFixture.InsertAsync(user.AsDocument());

            await _mongoDbFixture.InsertAsync(user1.AsDocument());

            await _mongoDbFixture.InsertAsync(user2.AsDocument());

            var query = new GetUsersByIds(new Guid[] { user.Id, user2.Id });

            // Check if exception is thrown

            var requestResult = _queryHandler
                                .Awaiting(c => c.HandleAsync(query));

            requestResult.Should().NotThrow();

            var result = await requestResult();

            var userDtos = result as UserDto[] ?? result.ToArray();

            userDtos.Should().Contain(c => c.Id == user.Id);
            userDtos.Should().Contain(c => c.Id == user2.Id);
        }
Exemplo n.º 4
0
        public async Task get_issues_without_sprint_for_project_query_succeeds_when_a_issue_without_sprint_exists()
        {
            var projectId = "projectKey" + Guid.NewGuid();

            var project = new Project(projectId);
            await _projectMongoDbFixture.InsertAsync(project.AsDocument());

            var sprintId    = "sprintKey" + Guid.NewGuid();
            var title       = "Title";
            var description = "description";
            var createdAt   = DateTime.Now;
            var startedAt   = DateTime.MinValue;
            var startDate   = DateTime.MinValue;
            var endDate     = DateTime.MaxValue;
            var endedAt     = DateTime.MaxValue;

            var sprint = new Sprint(sprintId, title, description, projectId, null, createdAt, startedAt, startDate, endDate, endedAt);

            await _sprintMongoDbFixture.InsertAsync(sprint.AsDocument());

            var issueId = "issueKey" + Guid.NewGuid();
            var issueWithoutSprintId = "issueWithoutSprintKey";

            var issue = new Issue(issueId, projectId, sprintId);
            var issueWithoutSprint = new Issue(issueWithoutSprintId, projectId, null);
            await _issueMongoDbFixture.InsertAsync(issue.AsDocument());

            await _issueMongoDbFixture.InsertAsync(issueWithoutSprint.AsDocument());

            var query = new GetIssuesWithoutSprintForProject(projectId);

            // Check if exception is thrown

            var requestResult = _queryHandler
                                .Awaiting(c => c.HandleAsync(query));

            requestResult.Should().NotThrow();

            var result = await requestResult();

            result.Should().NotContain(issueId);
            result.Should().Contain(issueWithoutSprintId);
        }
        public async Task get_sprints_query_succeeds_when_a_sprint_exists()
        {
            var sprintId    = "sprintKey" + Guid.NewGuid();
            var sprint2Id   = "sprint2Key" + Guid.NewGuid();
            var title       = "Title";
            var description = "description";
            var projectId   = "projectKey" + Guid.NewGuid();
            var createdAt   = DateTime.Now;
            var startedAt   = DateTime.MinValue;
            var startDate   = DateTime.MinValue;
            var endDate     = DateTime.MaxValue;
            var endedAt     = DateTime.MaxValue;

            var project = new Project(projectId);
            await _projectMongoDbFixture.InsertAsync(project.AsDocument());

            var sprint  = new Sprint(sprintId, title, description, projectId, null, createdAt, startedAt, startDate, endDate, endedAt);
            var sprint2 = new Sprint(sprint2Id, title, description, projectId, null, createdAt, startedAt, startDate, endDate, endedAt);

            await _sprintMongoDbFixture.InsertAsync(sprint.AsDocument());

            await _sprintMongoDbFixture.InsertAsync(sprint2.AsDocument());


            var query = new GetSprints(projectId);

            // Check if exception is thrown

            var requestResult = _queryHandler
                                .Awaiting(c => c.HandleAsync(query));

            requestResult.Should().NotThrow();

            var result = await requestResult();

            var sprintDtos = result as SprintDto[] ?? result.ToArray();

            sprintDtos.Should().Contain(i => i.Id == sprintId);
            sprintDtos.Should().Contain(i => i.Id == sprint2Id);
        }
Exemplo n.º 6
0
        public async Task getissues_query_succeeds_when_a_issue_exists()
        {
            var projectId   = "projectKey";
            var epicId      = "epicKey";
            var issueId     = "issueKey";
            var issue2Id    = "issueKey2";
            var sprintId    = string.Empty;
            var title       = "Title";
            var description = "description";
            var type        = IssueType.Story;
            var status      = IssueStatus.TODO;
            var storypoints = 0;

            var project = new Project(projectId);
            await _projectsMongoDbFixture.InsertAsync(project.AsDocument());

            var issue  = new Issue(issueId, type, status, title, description, storypoints, projectId, epicId, sprintId, null, null, DateTime.Now);
            var issue2 = new Issue(issue2Id, type, status, title, description, storypoints, projectId, epicId, sprintId, null, null, DateTime.Now);
            await _issuesMongoDbFixture.InsertAsync(issue.AsDocument());

            await _issuesMongoDbFixture.InsertAsync(issue2.AsDocument());

            var query = new GetIssues(projectId: projectId);

            // Check if exception is thrown

            var requestResult = _queryHandler
                                .Awaiting(c => c.HandleAsync(query));

            requestResult.Should().NotThrow();

            var result = await requestResult();

            var issueDtos = result as IssueDto[] ?? result.ToArray();

            issueDtos.Should().Contain(i => i.Id == issueId);
            issueDtos.Should().Contain(i => i.Id == issue2Id);
        }
        public async Task getissue_query_succeeds_when_issue_exists()
        {
            var projectId   = "projectKey";
            var epicId      = "epicKey";
            var issueId     = "issueKey";
            var sprintId    = string.Empty;
            var title       = "Title";
            var description = "description";
            var type        = IssueType.Story;
            var status      = IssueStatus.TODO;
            var storypoints = 0;

            var project = new Project(projectId);
            await _projectsMongoDbFixture.InsertAsync(project.AsDocument());

            var issue = new Issue(issueId, type, status, title, description, storypoints, projectId, epicId, sprintId, null, null, DateTime.Now);
            await _issuesMongoDbFixture.InsertAsync(issue.AsDocument());

            var query = new GetIssue(issueId);

            // Check if exception is thrown

            var requestResult = _queryHandler
                                .Awaiting(c => c.HandleAsync(query));

            requestResult.Should().NotThrow();

            var result = await requestResult();

            result.Should().NotBeNull();
            result.Id.Should().Be(issueId);
            result.Type.Should().Be(type);
            result.Status.Should().Be(status);
            result.Title.Should().Be(title);
            result.Description.Should().Be(description);
            result.StoryPoints.Should().Be(storypoints);
            result.ProjectId.Should().Be(projectId);
        }