Tôi đang cố gắng để cấu hình một đối tượng Mock trong PHPUnit trở lại giá trị cho các thuộc tính khác nhau (được truy cập bằng cách sử dụng chức năng __get)PHPUnit - tạo các đối tượng Mock để hoạt động như khai đối với tài sản
Ví dụ:
class OriginalObject {
public function __get($name){
switch($name)
case "ParameterA":
return "ValueA";
case "ParameterB":
return "ValueB";
}
}
tôi đang cố gắng để thử này sử dụng:
$mockObject = $this->getMock("OrigionalObject");
$mockObject ->expects($this->once())
->method('__get')
->with($this->equalTo('ParameterA'))
->will($this->returnValue("ValueA"));
$mockObject ->expects($this->once())
->method('__get')
->with($this->equalTo('ParameterB'))
->will($this->returnValue("ValueB"));
nhưng điều này không khủng khiếp :-(
Có phải lỗi chính tả ("Origional" thay vì "gốc", thiếu dấu ngoặc kép đóng cửa ở mức ValueA và VALUE tỷ) trong mô hình mã một phần của mã thực tế của bạn, hoặc lỗi phiên mã? – Phil
LOL Cảm ơn Phil (vì đã chỉ ra chứng khó đọc của tôi) Lỗi chính tả (sửa đổi ngay) chỉ trong mã ví dụ - rõ ràng đây không phải là mã thực tế đang được thực thi – Tim