/** * Assert that product rating is displayed on product review(backend) page. * * @param CatalogProductReview $reviewIndex * @param CatalogProductReviewEdit $reviewEdit * @param Review $review * @return void */ public function processAssert(CatalogProductReview $reviewIndex, CatalogProductReviewEdit $reviewEdit, Review $review) { $reviewIndex->open(); $reviewIndex->getReviewGrid()->searchAndOpen(['title' => $review->getTitle()]); $ratingReview = $this->sortDataByPath($review->getRatings(), '::title'); $ratingForm = $this->sortDataByPath($reviewEdit->getReviewForm()->getData()['ratings'], '::title'); $error = $this->verifyData($ratingReview, $ratingForm); \PHPUnit_Framework_Assert::assertEmpty($error, $error); }
/** * Fill ratings on the review form. * * @param ReviewFixture $review * @return void */ protected function fillRatings(ReviewFixture $review) { $ratingsData = $review->getRatings(); $ratingsFixture = $review->getDataFieldConfig('ratings')['source']->getRatings(); foreach ($ratingsData as $key => $value) { $this->setRating($ratingsFixture[$key], $value['rating']); } }
/** * Prepare fixture review data. * * @param Review $review * @return array */ protected function prepareReview(Review $review) { return ['title' => $review->getTitle(), 'detail' => $review->getDetail(), 'nickname' => $review->getNickname(), 'ratings' => $review->getRatings()]; }