Rumah > pembangunan bahagian belakang > Golang > mockgen tidak mencipta olok-olok

mockgen tidak mencipta olok-olok

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2024-02-06 08:45:03
ke hadapan
1206 orang telah melayarinya

mockgen 不创建模拟

Kandungan soalan

Ini adalah struktur folder saya:

demo/
|-- go.mod
|-- main.go
|-- interfaces/
|   |-- interfaces.go
|-- mocks/
Salin selepas log masuk

Ini ialah fail go.mod saya

go 1.20

require (
    github.com/golang/mock v1.6.0 // indirect
    golang.org/x/mod v0.4.2 // indirect
    golang.org/x/sys v0.0.0-20210510120138-977fb7262007 // indirect
    golang.org/x/tools v0.1.1 // indirect
    golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
)
Salin selepas log masuk

Ini antara muka saya.go

package interfaces

type MyInterface interface {
    DoSomething() error
    GetValue() int
}
Salin selepas log masuk

Apabila saya cuba menjalankan perintah mockgen, bukannya mencipta olok-olok, ia memberi saya penerangan bantuan ini: mockgen mempunyai dua mod operasi: sumber dan refleksi. Mod sumber menjana antara muka olok-olok daripada fail sumber. Ia didayakan dengan menggunakan bendera -source. Bendera lain yang mungkin berguna dalam mod ini ialah -imports dan -aux_files.

https://manpages.org/mockgen

Saya menjalankan arahan berikut: mockgen -destination=mocks/mock_myinterface.go -package=mocks demo/interfaces MyInterface

Bagaimana untuk menggunakan arahan mockgen dengan betul?


Jawapan betul


Anda mungkin perlu menggunakan garpu yang diselenggara oleh Uber (sejak Google meninggalkan golang/mock): https://github.com/uber-go/mock

Jika anda hanya menjalankan arahan mockgen anda akan mendapat pilihan arahan. Sesuatu yang sepatutnya berkesan untuk anda ialah:

mockgen -source interfaces/interfaces.go -destination mocks/mocks.go
Salin selepas log masuk

Atas ialah kandungan terperinci mockgen tidak mencipta olok-olok. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan