Register
Submit a solution
The challenge is finished.

Challenge Overview


The Role-Based Curriculum App (RBC App) is a tool created to automate the processes of role-based curriculum checklist management. The Role-Based Curriculum App is utilized to track the overall proficiency and capabilities of associates to perform role-based tasks.
 
We’ve recently completed the wireframe challenge for this application. You can see the wireframe challenge spec 
here to understand the application better. The backend REST services are built in Java (Spring) and latest code is in our backend repo. We’ve also built the Swagger documentation for these proposed REST services in the last challenge.

In this challenge we will implement tests that primarily test the following:

  • Does the endpoint perform the required actions (functional) - for each of the endpoints in scope we need tests that verify the endpoint makes the correct changes to the database and return the correct data in response.

  • Does it respect role based access and restrictions - we have six roles in the app (User, RoleMentor, Learning Catalyst, Manager, Admin, App Admin) and each of them can call different endpoints. For example both Manager and admin roles can add users to a team, but manager can do that only for teams that he is manager of, while admin can do it for all teams. We have a roles matrix in the attached document - a table detailing what each of the roles can and can not do in the system. Tests should cover success/failure tests for each role. If there are bugs in the current code that cause these tests to fail, fixing them is in scope (it's just simple role checks).

Endpoints in scope are Users, Teams, Checklists and Scores. Using Spring TestContext framework is mandatory and annotation based configuration is preferred over xml. 

Provided Artefacts
- Backend code
- Swagger & API mapping document for various pages
- Frontend code
 frontend repo (please see forums for how to access) - just for reference
- RBC App Business Requirements - document containing the role matrix



Final Submission Guidelines

Submit the updated backend code
Submit a deployment/verification guide

ELIGIBLE EVENTS:

2018 Topcoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30062806