source: branches/version-2_13-dev/tests/class/Common_TestCase.php @ 22794

Revision 22794, 2.9 KB checked in by kimoto, 8 years ago (diff)

UnitTest?中にエラー画面を表示してしまわないようにする

Line 
1<?php
2
3$HOME = realpath(dirname(__FILE__)) . "/../..";
4require_once($HOME . "/tests/class/replace/SC_Display_Ex.php");
5require_once($HOME . "/tests/class/replace/SC_Response_Ex.php");
6require_once($HOME . "/tests/class/test/util/Test_Utils.php");
7require_once($HOME . "/tests/class/test/util/User_Utils.php");
8require_once($HOME . "/tests/require.php");
9
10require_once($HOME . "/data/class/pages/LC_Page_Index.php");
11/**
12 * 全テストケースの基底クラスです。
13 * SC_Queryのテスト以外は基本的にこのクラスを継承して作成してください。
14 *
15 */
16class Common_TestCase extends PHPUnit_Framework_TestCase
17{
18
19  /** SC_Query インスタンス */
20  protected $objQuery;
21
22  /** 期待値 */
23  protected $expected;
24  /** 実際の値 */
25  protected $actual;
26
27  protected function setUp()
28  {
29    $this->objQuery = SC_Query_Ex::getSingletonInstance('', true);
30    $this->objQuery->begin();
31  }
32
33  protected function tearDown()
34  {
35    $this->objQuery->rollback();
36    $this->objQuery = null;
37  }
38
39  /**
40   * 各テストfunctionの末尾で呼び出し、期待値と実際の値の比較を行います。
41   * 呼び出す前に、$expectedに期待値を、$actualに実際の値を導入してください。
42   */
43  protected function verify($message = null)
44  {
45    $this->assertEquals($this->expected, $this->actual, $message);
46  }
47
48  //////////////////////////////////////////////////////////////////
49  // 以下はテスト用のユーティリティを使うためのサンプルです。
50  // 実際に動作させる場合にはコメントアウトを外して下さい。
51
52  /**
53   * actionExit()呼び出しを書き換えてexit()させない例です。
54   */
55  /**
56  public function testExit()
57  {
58    $resp = new SC_Response_Ex();
59    $resp->actionExit();
60
61    $this->expected = TRUE;
62    $this->actual = $resp->isExited();
63    $this->verify('exitしたかどうか');
64  }
65  */
66
67  /**
68   * 端末種別をテストケースから自由に設定する例です。
69   */
70  /**
71  public function testDeviceType()
72  {
73    $this->expected = array(DEVICE_TYPE_MOBILE, DEVICE_TYPE_SMARTPHONE);
74    $this->actual = array();
75
76    // 端末種別を設定
77    User_Utils::setDeviceType(DEVICE_TYPE_MOBILE);
78    $this->actual[0] = SC_Display_Ex::detectDevice();
79    User_Utils::setDeviceType(DEVICE_TYPE_SMARTPHONE);
80    $this->actual[1] = SC_Display_Ex::detectDevice();
81
82    $this->verify('端末種別');
83  }
84  */
85
86  /**
87   * ログイン状態をテストケースから自由に切り替える例です。
88   */
89  /**
90  public function testLoginState()
91  {
92    $this->expected = array(FALSE, TRUE);
93    $this->actual = array();
94
95    $objCustomer = new SC_Customer_Ex();
96    User_Utils::setLoginState(FALSE);
97    $this->actual[0] = $objCustomer->isLoginSuccess();
98    User_Utils::setLoginState(TRUE, null, $this->objQuery);
99    $this->actual[1] = $objCustomer->isLoginSuccess();
100
101    $this->verify('ログイン状態');
102  }
103  */
104}
105
Note: See TracBrowser for help on using the repository browser.