Rumah >pembangunan bahagian belakang >Golang >Adakah terdapat cara untuk mencipta pengawal gomock baharu tanpa NewController?

Adakah terdapat cara untuk mencipta pengawal gomock baharu tanpa NewController?

WBOY
WBOYke hadapan
2024-02-09 10:03:09767semak imbas

有没有办法在没有 NewController 的情况下创建新的 gomock 控制器?

Mencipta pengawal baharu adalah keperluan biasa apabila menggunakan gomock untuk ujian unit. Walau bagaimanapun, kadangkala kita mungkin tidak mempunyai NewController, apakah yang perlu kita lakukan? Jawapannya ya! Dalam gomock, kita boleh mensimulasikan pengawal baharu dengan menggunakan pengawal olok-olok. Kaedah ini membolehkan kami mencipta dan menggunakan pengawal palsu untuk ujian tanpa contoh pengawal sebenar. Dengan cara ini, kami boleh menguji logik kod kami secara bebas tanpa dipengaruhi oleh sumber luaran.

Kandungan soalan

Seperti tajuknya, adakah terdapat cara untuk mencipta pengawal gomock baharu tanpa NewController? Komen dalam beg cakap

// NewController returns a new Controller. It is the preferred way to create a
// Controller.

Saya tertanya-tanya sama ada terdapat cara untuk menciptanya tanpa pembina?

Saya mencuba pelbagai cara seperti menciptanya menggunakan new() dan menetapkan pembolehubah secara langsung tetapi pengawal tidak berfungsi new() 创建它并直接分配变量,但控制器无法工作

解决方法

类型 Controller 有一个私有字段 expectedCalls 不能在构造函数之外设置。您需要使用 NewControllerWithContext

Penyelesaian 🎜🎜Jenis Controller mempunyai medan peribadi expectedCalls tidak boleh ditetapkan di luar pembina. Anda perlu menggunakan fungsi NewController atau WithContext. 🎜

Atas ialah kandungan terperinci Adakah terdapat cara untuk mencipta pengawal gomock baharu tanpa NewController?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam