Yönteminde tip-ipucu ile Arayüzü Mock nesne oluşturma PHPUnit başarısız

1 Cevap php

Ben aşağıdaki arayüz oluşturuldu:

<?php
interface Action
{
    public function execute(\requests\Request $request, array $params);
}

Sonra PHPUnit 3.4 ile bu arayüz bir Mock nesne yapmak için çalışıyorum, ama ben aşağıdaki hatayı alıyorum:

Ölümcül hata: Mock_Action_b389c0b1 Bildirgesi :: execute () D () yürütmek :: Eylem bununla uyumlu olmalıdır: \ xampp \ xampp \ php \ ARMUT \ PHPUnit \ Framework \ TestCase.php (1121): eval () ' 2. hatta d code

Ben PHPUnit aldım ve arayüz Eylem uygulayan bir Mock nesne oluşturur, ancak şu şekilde yürütmek yöntemi oluşturur bulundu yığın izleme baktı:

<?php
public function execute($request, array $params)

Gördüğünüz gibi, PHPUnit dizi türü-ipucu devraldı, ama yaklaşık \ istekler \ İsteği unutuyor. Hangi Açıkçası bir hataya yol açmaktadır. Herkes bu hata için bir çözüm biliyor mu?

Ben de ad alanları olmadan denedim, ama hala aynı hatayı alıyorum.

1 Cevap

Belki biraz geç.

Ben bu aynı sorunu vardı ve ima tipi yüklü ve yüklenebilir değil oldu çıktı. Sonuç olarak, PHP'nin ReflectionParameter sınıf adını geri dönmez, ve phpunit ait sahte jeneratör dahil etmez.

Eğer ima tipi autoload kullanarak yüklü veya yüklenebilir ya olduğundan emin olursanız, bu çalışması gerekir.