github.com/goravel/framework@v1.13.9/testing/mock/mock.go (about) 1 package mock 2 3 import ( 4 accessmocks "github.com/goravel/framework/contracts/auth/access/mocks" 5 authmocks "github.com/goravel/framework/contracts/auth/mocks" 6 cachemocks "github.com/goravel/framework/contracts/cache/mocks" 7 configmocks "github.com/goravel/framework/contracts/config/mocks" 8 consolemocks "github.com/goravel/framework/contracts/console/mocks" 9 cryptmocks "github.com/goravel/framework/contracts/crypt/mocks" 10 ormmocks "github.com/goravel/framework/contracts/database/orm/mocks" 11 seedermocks "github.com/goravel/framework/contracts/database/seeder/mocks" 12 eventmocks "github.com/goravel/framework/contracts/event/mocks" 13 filesystemmocks "github.com/goravel/framework/contracts/filesystem/mocks" 14 foundationmocks "github.com/goravel/framework/contracts/foundation/mocks" 15 grpcmocks "github.com/goravel/framework/contracts/grpc/mocks" 16 hashmocks "github.com/goravel/framework/contracts/hash/mocks" 17 httpmocks "github.com/goravel/framework/contracts/http/mocks" 18 mailmocks "github.com/goravel/framework/contracts/mail/mocks" 19 queuemocks "github.com/goravel/framework/contracts/queue/mocks" 20 validatemocks "github.com/goravel/framework/contracts/validation/mocks" 21 "github.com/goravel/framework/foundation" 22 ) 23 24 var app *foundationmocks.Application 25 26 func App() *foundationmocks.Application { 27 if app == nil { 28 app = &foundationmocks.Application{} 29 foundation.App = app 30 } 31 32 return app 33 } 34 35 func Artisan() *consolemocks.Artisan { 36 mockArtisan := &consolemocks.Artisan{} 37 App().On("MakeArtisan").Return(mockArtisan) 38 39 return mockArtisan 40 } 41 42 func Auth() *authmocks.Auth { 43 mockAuth := &authmocks.Auth{} 44 App().On("MakeAuth").Return(mockAuth) 45 46 return mockAuth 47 } 48 49 func Cache() (*cachemocks.Cache, *cachemocks.Driver, *cachemocks.Lock) { 50 mockCache := &cachemocks.Cache{} 51 App().On("MakeCache").Return(mockCache) 52 53 return mockCache, &cachemocks.Driver{}, &cachemocks.Lock{} 54 } 55 56 func Config() *configmocks.Config { 57 mockConfig := &configmocks.Config{} 58 App().On("MakeConfig").Return(mockConfig) 59 60 return mockConfig 61 } 62 63 func Crypt() *cryptmocks.Crypt { 64 mockCrypt := &cryptmocks.Crypt{} 65 App().On("MakeCrypt").Return(mockCrypt) 66 67 return mockCrypt 68 } 69 70 func Event() (*eventmocks.Instance, *eventmocks.Task) { 71 mockEvent := &eventmocks.Instance{} 72 App().On("MakeEvent").Return(mockEvent) 73 74 return mockEvent, &eventmocks.Task{} 75 } 76 77 func Gate() *accessmocks.Gate { 78 mockGate := &accessmocks.Gate{} 79 App().On("MakeGate").Return(mockGate) 80 81 return mockGate 82 } 83 84 func Grpc() *grpcmocks.Grpc { 85 mockGrpc := &grpcmocks.Grpc{} 86 App().On("MakeGrpc").Return(mockGrpc) 87 88 return mockGrpc 89 } 90 91 func Hash() *hashmocks.Hash { 92 mockHash := &hashmocks.Hash{} 93 App().On("MakeHash").Return(mockHash) 94 95 return mockHash 96 } 97 98 func Log() { 99 App().On("MakeLog").Return(NewTestLog()) 100 } 101 102 func Mail() *mailmocks.Mail { 103 mockMail := &mailmocks.Mail{} 104 App().On("MakeMail").Return(mockMail) 105 106 return mockMail 107 } 108 109 func Orm() (*ormmocks.Orm, *ormmocks.Query, *ormmocks.Transaction, *ormmocks.Association) { 110 mockOrm := &ormmocks.Orm{} 111 App().On("MakeOrm").Return(mockOrm) 112 113 return mockOrm, &ormmocks.Query{}, &ormmocks.Transaction{}, &ormmocks.Association{} 114 } 115 116 func Queue() (*queuemocks.Queue, *queuemocks.Task) { 117 mockQueue := &queuemocks.Queue{} 118 App().On("MakeQueue").Return(mockQueue) 119 120 return mockQueue, &queuemocks.Task{} 121 } 122 123 func RateLimiter() *httpmocks.RateLimiter { 124 mockRateLimiter := &httpmocks.RateLimiter{} 125 App().On("MakeRateLimiter").Return(mockRateLimiter) 126 127 return mockRateLimiter 128 } 129 130 func Storage() (*filesystemmocks.Storage, *filesystemmocks.Driver, *filesystemmocks.File) { 131 mockStorage := &filesystemmocks.Storage{} 132 mockDriver := &filesystemmocks.Driver{} 133 mockFile := &filesystemmocks.File{} 134 App().On("MakeStorage").Return(mockStorage) 135 136 return mockStorage, mockDriver, mockFile 137 } 138 139 func Validation() (*validatemocks.Validation, *validatemocks.Validator, *validatemocks.Errors) { 140 mockValidation := &validatemocks.Validation{} 141 mockValidator := &validatemocks.Validator{} 142 mockErrors := &validatemocks.Errors{} 143 App().On("MakeValidation").Return(mockValidation) 144 145 return mockValidation, mockValidator, mockErrors 146 } 147 148 func View() *httpmocks.View { 149 mockView := &httpmocks.View{} 150 App().On("MakeView").Return(mockView) 151 152 return mockView 153 } 154 155 func Seeder() *seedermocks.Facade { 156 mockSeeder := &seedermocks.Facade{} 157 App().On("MakeSeeder").Return(mockSeeder) 158 159 return mockSeeder 160 }