@@ -58,6 +58,7 @@ describe("RatingService", () => {
5858 ratingUser . verifyToken = "" ;
5959 ratingUser . tokenSecret = "" ;
6060 ratingUser . forgotPasswordToken = "" ;
61+ ratingUser . admitted = true ;
6162
6263 // A user who is a member of the project team
6364 teamMember = new User ( ) ;
@@ -69,6 +70,7 @@ describe("RatingService", () => {
6970 teamMember . verifyToken = "" ;
7071 teamMember . tokenSecret = "" ;
7172 teamMember . forgotPasswordToken = "" ;
73+ teamMember . admitted = true ;
7274
7375 [ ratingUser , teamMember ] = await userRepo . save ( [ ratingUser , teamMember ] ) ;
7476
@@ -98,6 +100,23 @@ describe("RatingService", () => {
98100
99101 describe ( "checkPermission" , ( ) => {
100102 describe ( "via upsertRating" , ( ) => {
103+ it ( "throws ForbiddenError if user is not admitted" , async ( ) => {
104+ expect . assertions ( 1 ) ;
105+
106+ ratingUser . admitted = false
107+
108+ const rating = Object . assign ( new Rating ( ) , {
109+ project : mockProject ,
110+ user : ratingUser ,
111+ criterion : mockCriterion ,
112+ rating : 3 ,
113+ } ) ;
114+
115+ await expect (
116+ ratingService . upsertRating ( rating , ratingUser ) ,
117+ ) . rejects . toThrow ( ForbiddenError ) ;
118+ } ) ;
119+
101120 it ( "throws ForbiddenError when rating is globally disabled" , async ( ) => {
102121 expect . assertions ( 1 ) ;
103122
0 commit comments