public its_attachTopicAction_should_return_404_status_code_when_no_article ( $request, $queryBuilder, $user, $entityManager, $repository, $query ) |
public function its_attachTopicAction_should_return_404_status_code_when_no_article($request, $queryBuilder, $user, $entityManager, $repository, $query)
{
$user->hasPermission('AttachTopicToArticle')->willReturn(true);
$entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($repository);
$request->get('_articleNumber')->willReturn('64');
$request->get('_languageCode')->willReturn('1');
$repository->createQueryBuilder('a')->willReturn($queryBuilder);
$queryBuilder->join('a.language', 'l')->willReturn($queryBuilder);
$queryBuilder->where('a.number = :number')->willReturn($queryBuilder);
$queryBuilder->andWhere('l.code = :code')->willReturn($queryBuilder);
$queryBuilder->setParameters(array('number' => '64', 'code' => '1'))->willReturn($queryBuilder);
$queryBuilder->getQuery()->willReturn($query);
$query->getOneOrNullResult()->willReturn(null);
$response = $this->attachTopicAction($request);
$response->getStatusCode()->shouldReturn(404);
$response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');
}