@@ -66,15 +66,15 @@ describe("RatingService", () => {
6666 } ) ;
6767
6868 describe ( "checkPermission" , ( ) => {
69- describe ( "via createRating " , ( ) => {
69+ describe ( "via upsertRating " , ( ) => {
7070 it ( "throws ForbiddenError when rating is globally disabled" , async ( ) => {
7171 expect . assertions ( 1 ) ;
7272
7373 settingsService . mocks . getSettings . mockResolvedValue (
7474 { application : { allowRatingProjects : false } } as any
7575 ) ;
7676
77- await expect ( ratingService . createRating ( mockRating , mockUser ) ) . rejects . toThrow (
77+ await expect ( ratingService . upsertRating ( mockRating , mockUser ) ) . rejects . toThrow (
7878 ForbiddenError ,
7979 ) ;
8080 } ) ;
@@ -88,7 +88,7 @@ describe("RatingService", () => {
8888
8989 mockProjectsRepo . findOneBy . mockResolvedValue ( null ) ;
9090
91- await expect ( ratingService . createRating ( mockRating , mockUser ) ) . rejects . toThrow (
91+ await expect ( ratingService . upsertRating ( mockRating , mockUser ) ) . rejects . toThrow (
9292 NotFoundError ,
9393 ) ;
9494 } ) ;
@@ -104,7 +104,15 @@ describe("RatingService", () => {
104104 Object . assign ( new Project ( ) , { ...mockProject , allowRating : false } ) ,
105105 ) ;
106106
107- await expect ( ratingService . createRating ( mockRating , mockUser ) ) . rejects . toThrow (
107+ // The backend should not be tricked by an allowRating: true in the payload
108+ const payload = {
109+ ...mockRating ,
110+ project : {
111+ ...mockRating . project ,
112+ allowRating : true
113+ }
114+ }
115+ await expect ( ratingService . upsertRating ( payload , mockUser ) ) . rejects . toThrow (
108116 ForbiddenError ,
109117 ) ;
110118 } ) ;
@@ -119,7 +127,7 @@ describe("RatingService", () => {
119127 mockProjectsRepo . findOneBy . mockResolvedValue ( mockProject ) ;
120128 mockTeamsRepo . findOneBy . mockResolvedValue ( null ) ;
121129
122- await expect ( ratingService . createRating ( mockRating , mockUser ) ) . rejects . toThrow (
130+ await expect ( ratingService . upsertRating ( mockRating , mockUser ) ) . rejects . toThrow (
123131 NotFoundError ,
124132 ) ;
125133 } ) ;
@@ -136,7 +144,7 @@ describe("RatingService", () => {
136144 Object . assign ( new Team ( ) , { ...mockTeam , users : [ "1" , "2" , "3" ] } ) ,
137145 ) ;
138146
139- await expect ( ratingService . createRating ( mockRating , mockUser ) ) . rejects . toThrow (
147+ await expect ( ratingService . upsertRating ( mockRating , mockUser ) ) . rejects . toThrow (
140148 ForbiddenError ,
141149 ) ;
142150 } ) ;
@@ -154,28 +162,12 @@ describe("RatingService", () => {
154162 const savedRating = Object . assign ( new Rating ( ) , { ...mockRating , id : 42 } ) ;
155163 mockRatingsRepo . save . mockResolvedValue ( savedRating ) ;
156164
157- const result = await ratingService . createRating ( mockRating , mockUser ) ;
165+ const result = await ratingService . upsertRating ( mockRating , mockUser ) ;
158166
159167 expect ( result ) . toBe ( savedRating ) ;
160168 expect ( mockRatingsRepo . save ) . toHaveBeenCalledWith ( mockRating ) ;
161169 } ) ;
162170
163- it ( "throws BadRequestError when user has already rated the same project and criteria" , async ( ) => {
164- expect . assertions ( 1 ) ;
165-
166- settingsService . mocks . getSettings . mockResolvedValue (
167- { application : { allowRatingProjects : true } } as any
168- ) ;
169-
170- mockProjectsRepo . findOneBy . mockResolvedValue ( mockProject ) ;
171- mockTeamsRepo . findOneBy . mockResolvedValue ( mockTeam ) ;
172- mockRatingsRepo . findOne . mockResolvedValue ( mockRating ) ;
173-
174- await expect ( ratingService . createRating ( mockRating , mockUser ) ) . rejects . toThrow (
175- BadRequestError ,
176- ) ;
177- } ) ;
178-
179171 it ( "is forbidden to impersonate other users" , async ( ) => {
180172 expect . assertions ( 1 ) ;
181173
@@ -192,7 +184,7 @@ describe("RatingService", () => {
192184 id : 1234
193185 } ;
194186
195- await expect ( ratingService . createRating ( mockRating , mockUser ) ) . rejects . toThrow (
187+ await expect ( ratingService . upsertRating ( mockRating , mockUser ) ) . rejects . toThrow (
196188 ForbiddenError ,
197189 ) ;
198190 } ) ;
0 commit comments