-
Notifications
You must be signed in to change notification settings - Fork 69
/
mock.go
66 lines (50 loc) · 1.58 KB
/
mock.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package mock
import (
cachemocks "github.com/goravel/framework/contracts/cache/mocks"
configmocks "github.com/goravel/framework/contracts/config/mocks"
consolemocks "github.com/goravel/framework/contracts/console/mocks"
ormmocks "github.com/goravel/framework/contracts/database/orm/mocks"
eventmocks "github.com/goravel/framework/contracts/event/mocks"
mailmocks "github.com/goravel/framework/contracts/mail/mocks"
queuemocks "github.com/goravel/framework/contracts/queue/mocks"
"github.com/goravel/framework/facades"
"github.com/goravel/framework/log"
)
func Cache() *cachemocks.Store {
mockCache := &cachemocks.Store{}
facades.Cache = mockCache
return mockCache
}
func Config() *configmocks.Config {
mockConfig := &configmocks.Config{}
facades.Config = mockConfig
return mockConfig
}
func Artisan() *consolemocks.Artisan {
mockArtisan := &consolemocks.Artisan{}
facades.Artisan = mockArtisan
return mockArtisan
}
func Orm() (*ormmocks.Orm, *ormmocks.DB, *ormmocks.Transaction) {
mockOrm := &ormmocks.Orm{}
facades.Orm = mockOrm
return mockOrm, &ormmocks.DB{}, &ormmocks.Transaction{}
}
func Event() (*eventmocks.Instance, *eventmocks.Task) {
mockEvent := &eventmocks.Instance{}
facades.Event = mockEvent
return mockEvent, &eventmocks.Task{}
}
func Log() {
facades.Log = log.NewLogrus(nil, log.NewTestWriter())
}
func Mail() *mailmocks.Mail {
mockMail := &mailmocks.Mail{}
facades.Mail = mockMail
return mockMail
}
func Queue() (*queuemocks.Queue, *queuemocks.Task) {
mockQueue := &queuemocks.Queue{}
facades.Queue = mockQueue
return mockQueue, &queuemocks.Task{}
}