<?php
namespace App\Test\TestCase\Controller;
-use App\Controller\ReviewsController;
+use App\Controller\Api\V1\ReviewsController;
use Cake\TestSuite\IntegrationTestCase;
/**
* App\Controller\ReviewsController Test Case
*/
-class ReviewsControllerTest extends IntegrationTestCase
+class ReviewsControllerTest extends \Cake\TestSuite\IntegrationTestCase
{
/**
*/
public $fixtures = [
'app.reviews',
- 'app.users',
+ /*'app.users',
'app.user_types',
'app.softwares',
'app.licenses',
- 'app.licence_types'
+ 'app.licence_types'*/
];
/**
{
$this->markTestIncomplete('Not implemented yet.');
}
+
+ /**
+ * Test the function getReviewsBySoftwareId
+ * Should be retutns all reviews of a software thanks to his id.
+ */
+ public function testgetReviewsBySoftwareId(){
+
+
+ $this->configRequest([
+ 'headers' => ['Accept' => 'application/json']
+ ]);
+
+ $result = $this->get('api/v1/reviews/getReviewsBySoftwareId/2.json');
+
+ // Vérifie que le code de réponse est 200
+ $this->assertResponseOk();
+ $expected =
+ ["reviews"=>[[
+ "id"=> 2, // l'id passer en parametre
+ "comment"=> "Pastell r\u00e9pond exactment \u00e0 mes besoins.",
+ "title"=> "Excellent",
+ "created"=> "2016-04-18T07:53:29+0000",
+ "user_id"=> 2, //Que ce soit de type Integer
+ "software_id"=> 2, //Que ce soit de type Integer
+ "evaluation"=> 5, //Que ce soit de type Integer
+ "modified"=> "2016-04-18T07:53:29+0000"
+ ],
+ [
+ "id"=> 3, // l'id passer en parametre
+ "comment"=> "Pastell r\u00e9pond aux besoins mais peut encore \u00e9voluer.",
+ "title"=> "Bon",
+ "created"=> "2016-04-18T07:54:08+0000",
+ "user_id"=> 4, //Que ce soit de type Integer
+ "software_id"=> 2,//Que ce soit de type Integer
+ "evaluation"=> 4,//Que ce soit de type Integer
+ "modified"=> "2016-04-18T07:54:08+0000"
+ ]]];
+ $expected = json_encode($expected, JSON_PRETTY_PRINT);
+ $this->assertEquals($expected, $this->_response->body());
+ }
}