PHPUnitのテストの書き方 超入門
いままで書いたことなかったのでメモ。
<?php require_once 'ContractStartEvent.php'; // // PHPUnit_Framework_TestCase を継承して // テスト用クラスを作る // class ContractTest extends PHPUnit_Framework_TestCase { // // テスト用メソッドは、prefixにtestと付ける。 // public function testCreate() { $contractModel = new Contract(); // モックインスタンスを作成する。 // 引数には実際に実装しているクラスを指定する。 $paymentApiClient = $this->createMock(PaymentApiClient); // モックにsettle関数と戻り値を追加する。 $paymentApiClient->method('settle')->willReturn(array('result' => true)); $args = array( 'start_at' => '2021-06-01T00:00:00+09:00' ); $contract = $contractModel->create($args, array('paymentApiClient' => $paymentApiClient)); // テスト実行 $this->assertEquals($contract['start_at'], '2021-06-01T00:00:00+09:00'); } }