@@ -3207,4 +3207,133 @@ public function theUserGetsAllUsersUsingTheGraphApi(?string $user = null): void
32073207
32083208 $ this ->featureContext ->setResponse ($ response );
32093209 }
3210+
3211+ /**
3212+ * @param string $user
3213+ * @param string $itemId
3214+ *
3215+ * @return ResponseInterface
3216+ */
3217+ public function markFavorite (string $ user , string $ itemId ): ResponseInterface {
3218+ $ response = GraphHelper::markFavorite (
3219+ $ this ->featureContext ->getBaseUrl (),
3220+ $ this ->featureContext ->getStepLineRef (),
3221+ $ user ,
3222+ $ this ->featureContext ->getPasswordForUser ($ user ),
3223+ $ itemId
3224+ );
3225+
3226+ $ this ->featureContext ->setResponse ($ response );
3227+ return $ response ;
3228+ }
3229+
3230+ /**
3231+ * @param string $user
3232+ * @param string $itemId
3233+ *
3234+ * @return ResponseInterface
3235+ */
3236+ public function unmarkFavorite (string $ user , string $ itemId ): ResponseInterface {
3237+ $ response = GraphHelper::unmarkFavorite (
3238+ $ this ->featureContext ->getBaseUrl (),
3239+ $ this ->featureContext ->getStepLineRef (),
3240+ $ user ,
3241+ $ this ->featureContext ->getPasswordForUser ($ user ),
3242+ $ itemId
3243+ );
3244+ $ this ->featureContext ->setResponse ($ response );
3245+ return $ response ;
3246+ }
3247+
3248+ /**
3249+ * @When user :user marks :item :itemName as favorite from space :spaceName using the Graph API
3250+ *
3251+ * @param string $user
3252+ * @param string $item (file|folder)
3253+ * @param string $itemName
3254+ * @param string $spaceName
3255+ *
3256+ * @return void
3257+ */
3258+ public function userMarksItemFromSpaceAsFavoriteUsingTheGraphApi (
3259+ string $ user ,
3260+ string $ item ,
3261+ string $ itemName ,
3262+ string $ spaceName
3263+ ): void {
3264+ $ itemId = ($ item === 'file ' )
3265+ ? $ this ->spacesContext ->getFileId ($ user , $ spaceName , $ itemName )
3266+ : $ this ->spacesContext ->getResourceId ($ user , $ spaceName , $ itemName );
3267+ $ this ->markFavorite ($ user , $ itemId );
3268+ }
3269+
3270+ /**
3271+ * @When user :user unmarks :item :itemName as favorite from space :spaceName using the Graph API
3272+ *
3273+ * @param string $user
3274+ * @param string $item (file|folder)
3275+ * @param string $itemName
3276+ * @param string $spaceName
3277+ *
3278+ * @return void
3279+ */
3280+ public function userUnmarksItemFromSpaceAsFavoriteUsingTheGraphApi (
3281+ string $ user ,
3282+ string $ item ,
3283+ string $ itemName ,
3284+ string $ spaceName
3285+ ): void {
3286+ $ itemId = ($ item === 'file ' )
3287+ ? $ this ->spacesContext ->getFileId ($ user , $ spaceName , $ itemName )
3288+ : $ this ->spacesContext ->getResourceId ($ user , $ spaceName , $ itemName );
3289+ $ this ->unmarkFavorite ($ user , $ itemId );
3290+ }
3291+
3292+ /**
3293+ * @Given user :user has marked :item :itemName as favorite from space :spaceName
3294+ *
3295+ * @param string $user
3296+ * @param string $item (folder|file)
3297+ * @param string $itemName
3298+ * @param string $spaceName
3299+ *
3300+ * @return void
3301+ */
3302+ public function userHasMarkedItemFromSpaceAsFavoriteUsingTheGraphApi (
3303+ string $ user ,
3304+ string $ item ,
3305+ string $ itemName ,
3306+ string $ spaceName
3307+ ): void {
3308+ $ itemId = ($ item === 'file ' )
3309+ ? $ this ->spacesContext ->getFileId ($ user , $ spaceName , $ itemName )
3310+ : $ this ->spacesContext ->getResourceId ($ user , $ spaceName , $ itemName );
3311+
3312+ $ response = $ this ->markFavorite ($ user , $ itemId );
3313+ $ this ->featureContext ->theHTTPStatusCodeShouldBe (201 , '' , $ response );
3314+ }
3315+
3316+ /**
3317+ * @Given user :user has unmarked :item :itemName as favorite from space :spaceName
3318+ *
3319+ * @param string $user
3320+ * @param string $item (folder|file)
3321+ * @param string $itemName
3322+ * @param string $spaceName
3323+ *
3324+ * @return void
3325+ */
3326+ public function userHasUnmarkedItemFromSpaceAsFavoriteUsingTheGraphApi (
3327+ string $ user ,
3328+ string $ item ,
3329+ string $ itemName ,
3330+ string $ spaceName
3331+ ): void {
3332+ $ itemId = ($ item === 'file ' )
3333+ ? $ this ->spacesContext ->getFileId ($ user , $ spaceName , $ itemName )
3334+ : $ this ->spacesContext ->getResourceId ($ user , $ spaceName , $ itemName );
3335+
3336+ $ response = $ this ->unmarkFavorite ($ user , $ itemId );
3337+ $ this ->featureContext ->theHTTPStatusCodeShouldBe (204 , '' , $ response );
3338+ }
32103339}
0 commit comments