Comments (6)
The main package imports the package containing MessageSender with an alias. The directory from which I'm running moq contains the parent package which imports the "models" package containing MessageSender without an alias.
I've tried running from the main package directory using the actual package name and the aliased name. I also ran it from the parent package of the "models" package with and without the -pkg parameter, and ran it from the models package directory with and without the -pkg parameter. All of them yielded the same error message (obviously with different directories):
cannot find package "C:\\Users\\username\\src\\{project}\\{parent}\\models" in any of: C:\Go\src\C:\Users\username\src\{project}\{parent]\models (from $GOROOT) C:\Users\username\src\C:\Users\username\src\{project}\{parent}\models (from $GOPATH)
It's very odd that the current directory is getting concatenated in whole to the GOROOT and GOPATH directories, rather than just the relative directories.
from moq.
What are you importing the package as?
from moq.
same thing hapening to me as well
from moq.
Can one of you please submit a PR with a new test that fails highlighting your issue? The trouble is, moq as a tool operates within each environment so itβs possible itβs different for different people.
from moq.
Here you go:
? github.com/matryer/moq [no test files]
ok github.com/matryer/moq/example 0.150s [no tests to run]
? github.com/matryer/moq/generate [no test files]
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\example" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\example (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\example (from $GOPATH)
--- FAIL: TestMoq (0.01s)
moq_test.go:20: m.Mock: no initial packages were loaded
moq_test.go:40: expected but missing: "package example"
moq_test.go:40: expected but missing: "type PersonStoreMock struct"
moq_test.go:40: expected but missing: "CreateFunc func(ctx context.Context, person *Person, confirm bool) error"
moq_test.go:40: expected but missing: "GetFunc func(ctx context.Context, id string) (*Person, error)"
moq_test.go:40: expected but missing: "func (mock *PersonStoreMock) Create(ctx context.Context, person *Person, confirm bool) error"
moq_test.go:40: expected but missing: "func (mock *PersonStoreMock) Get(ctx context.Context, id string) (*Person, error)"
moq_test.go:40: expected but missing: "panic("PersonStoreMock.CreateFunc: method is nil but PersonStore.Create was just called")"
moq_test.go:40: expected but missing: "panic("PersonStoreMock.GetFunc: method is nil but PersonStore.Get was just called")"
moq_test.go:40: expected but missing: "lockPersonStoreMockGet.Lock()"
moq_test.go:40: expected but missing: "mock.calls.Get = append(mock.calls.Get, callInfo)"
moq_test.go:40: expected but missing: "lockPersonStoreMockGet.Unlock()"
moq_test.go:40: expected but missing: "// ID is the id argument value"
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\example" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\example (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\example (from $GOPATH)
--- FAIL: TestMoqExplicitPackage (0.00s)
moq_test.go:53: m.Mock: no initial packages were loaded
moq_test.go:67: expected but missing: "package different"
moq_test.go:67: expected but missing: "type PersonStoreMock struct"
moq_test.go:67: expected but missing: "CreateFunc func(ctx context.Context, person *example.Person, confirm bool) error"
moq_test.go:67: expected but missing: "GetFunc func(ctx context.Context, id string) (*example.Person, error)"
moq_test.go:67: expected but missing: "func (mock *PersonStoreMock) Create(ctx context.Context, person *example.Person, confirm bool) error"
moq_test.go:67: expected but missing: "func (mock *PersonStoreMock) Get(ctx context.Context, id string) (*example.Person, error)"
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\variadic" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\variadic (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\variadic (from $GOPATH)
--- FAIL: TestVariadicArguments (0.00s)
moq_test.go:83: m.Mock: no initial packages were loaded
moq_test.go:95: expected but missing: "package variadic"
moq_test.go:95: expected but missing: "type GreeterMock struct"
moq_test.go:95: expected but missing: "GreetFunc func(ctx context.Context, names ...string) string"
moq_test.go:95: expected but missing: "return mock.GreetFunc(ctx, names...)"
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\example" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\example (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\example (from $GOPATH)
--- FAIL: TestNothingToReturn (0.00s)
moq_test.go:108: m.Mock: no initial packages were loaded
moq_test.go:120: expected but missing: "mock.ClearCacheFunc(id)"
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\channels" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\channels (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\channels (from $GOPATH)
--- FAIL: TestChannelNames (0.00s)
moq_test.go:133: m.Mock: no initial packages were loaded
moq_test.go:141: expected but missing: "func (mock *QueuerMock) Sub(topic string) (<-chan Queue, error)"
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\imports\\two" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\imports\two (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\imports\two (from $GOPATH)
--- FAIL: TestImports (0.01s)
moq_test.go:154: m.Mock: no initial packages were loaded
moq_test.go:163: expected but missing: " "sync""
moq_test.go:163: expected but missing: " "github.com/matryer/moq/pkg/moq/testpackages/imports/one""
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\vendoring\\user" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\vendoring\user (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\vendoring\user (from $GOPATH)
--- FAIL: TestVendoredPackages (0.00s)
moq_test.go:186: mock error: no initial packages were loaded
moq_test.go:195: expected but missing: ""github.com/matryer/somerepo""
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\dotimport" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\dotimport (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\dotimport (from $GOPATH)
--- FAIL: TestDotImports (0.00s)
moq_test.go:223: mock error: no initial packages were loaded
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\emptyinterface" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\emptyinterface (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\emptyinterface (from $GOPATH)
--- FAIL: TestEmptyInterface (0.00s)
moq_test.go:239: mock error: no initial packages were loaded
--- FAIL: TestGoGenerateVendoredPackages (0.11s)
moq_test.go:264: Wait: exit status 1
cannot find package "C:\\Users\\<USER_NAME>\\Projects\\go\\src\\github.com\\matryer\\moq\\pkg\\moq\\testpackages\\samenameimport" in any of:
C:\Go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\samenameimport (from $GOROOT)
C:\Users\<USER_NAME>\Projects\go\src\C:\Users\<USER_NAME>\Projects\go\src\github.com\matryer\moq\pkg\moq\testpackages\samenameimport (from $GOPATH)
--- FAIL: TestImportedPackageWithSameName (0.00s)
moq_test.go:283: mock error: no initial packages were loaded
moq_test.go:287: missing samename.A to address the struct A from the external package samename
FAIL
FAIL github.com/matryer/moq/pkg/moq 0.246s
? github.com/matryer/moq/pkg/moq/testpackages/channels [no test files]
ok github.com/matryer/moq/pkg/moq/testpackages/dotimport 0.086s [no tests to run]
? github.com/matryer/moq/pkg/moq/testpackages/emptyinterface [no test files]
? github.com/matryer/moq/pkg/moq/testpackages/example [no test files]
ok github.com/matryer/moq/pkg/moq/testpackages/gogenvendoring/user 0.208s [no tests to run]
? github.com/matryer/moq/pkg/moq/testpackages/imports/one [no test files]
? github.com/matryer/moq/pkg/moq/testpackages/imports/two [no test files]
? github.com/matryer/moq/pkg/moq/testpackages/samenameimport [no test files]
? github.com/matryer/moq/pkg/moq/testpackages/samenameimport/samenameimport [no test files]
? github.com/matryer/moq/pkg/moq/testpackages/variadic [no test files]
? github.com/matryer/moq/pkg/moq/testpackages/vendoring/user [no test files]
from moq.
I think this is caused by GOPATH not being set. In recent versions of Go you don't need to set it anymore to build packages but Moq still seems to need it.
from moq.
Related Issues (20)
- Is there a way to speed up the moq generation time? HOT 14
- Feature to register multiple mock functions to a method HOT 2
- Moq creates non-unique import aliases HOT 3
- API for argument-based assertions HOT 2
- Instructions on readme inst matching the current version
- Support for mocking core types HOT 8
- Q. `--with-calls` option to generate functions to track and inspect the calls made to a mock HOT 2
- Not installing for go 1.15 HOT 3
- Support non-basic type constraints HOT 1
- error: couldn't load source package
- Self import issue HOT 2
- Error while re-generate mock
- PROPOSAL: Integration with vektra/mockery HOT 10
- Moq failing when encountering a generic function HOT 1
- feat: Allow generation of mocked interface that depends on other mocked interfaces from different packages HOT 1
- Moq panic when build with go 1.22
- moq should not follow type aliases to internal packages
- Mock method parameter shadows unexported types
- Proposal: mocking function types
- Moq fails when encountering new golang idioms HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from moq.