Я использую CakePHP 2.4как проверить метод, который использует модель AuthComponent :: пользователя внутри
У меня есть класс модели под названием Storybook.
Существует метод, называемый createDraft и его код выглядит следующим образом:
public function createDraft($data) {
$data['Storybook']['author'] = AuthComponent::user('id');
Когда я пишу сценарий тестирования с помощью тестов CakePHP, у меня есть проблема экземпляра пользовательских данных внутри AuthComponent.
Мой тестовый сценарий выглядит следующим образом:
<?php
App::uses('Storybook', 'Model');
class StorybookTestCase extends CakeTestCase {
/**
* Fixtures
*
* @var array
*/
public $fixtures = array(...
);
/**
* setUp method
*
* @return void
*/
public function setUp() {
parent::setUp();
$this->Storybook = ClassRegistry::init('Storybook');
...
...
/**
* GIVEN we have only a title
* WHEN we call createDraft
* THEN we have a new draft
*
* @return void
*/
public function testCreateDraftSuccessfully() {
// GIVEN only a title
$data = array('Storybook' => array('title' => 'some title'));
// WHEN we call the createDraft
$actualResult = $this->Storybook->createDraft($data);
....
тест потерпел неудачу в методе createDraft.
Я не могу заполнить AuthComponent пользовательскими данными по методу setUp, поскольку метод входа в систему AuthComponent не является статическим.
Просьба сообщить.