github.com/masterhung0112/hk_server/v5@v5.0.0-20220302090640-ec71aef15e1c/store/storetest/mockstore/store.go (about) 1 // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. 2 // See LICENSE.txt for license information. 3 4 package mockstore 5 6 import ( 7 "context" 8 "time" 9 10 "github.com/stretchr/testify/mock" 11 12 "github.com/masterhung0112/hk_server/v5/model" 13 "github.com/masterhung0112/hk_server/v5/store" 14 "github.com/masterhung0112/hk_server/v5/store/storetest/mocks" 15 ) 16 17 // Store can be used to provide mock stores for testing. 18 type Store struct { 19 TeamStore mocks.TeamStore 20 ChannelStore mocks.ChannelStore 21 PostStore mocks.PostStore 22 UserStore mocks.UserStore 23 RetentionPolicyStore mocks.RetentionPolicyStore 24 BotStore mocks.BotStore 25 AuditStore mocks.AuditStore 26 ClusterDiscoveryStore mocks.ClusterDiscoveryStore 27 RemoteClusterStore mocks.RemoteClusterStore 28 ComplianceStore mocks.ComplianceStore 29 SessionStore mocks.SessionStore 30 OAuthStore mocks.OAuthStore 31 SystemStore mocks.SystemStore 32 WebhookStore mocks.WebhookStore 33 CommandStore mocks.CommandStore 34 CommandWebhookStore mocks.CommandWebhookStore 35 PreferenceStore mocks.PreferenceStore 36 LicenseStore mocks.LicenseStore 37 TokenStore mocks.TokenStore 38 EmojiStore mocks.EmojiStore 39 ThreadStore mocks.ThreadStore 40 StatusStore mocks.StatusStore 41 FileInfoStore mocks.FileInfoStore 42 UploadSessionStore mocks.UploadSessionStore 43 ReactionStore mocks.ReactionStore 44 JobStore mocks.JobStore 45 UserAccessTokenStore mocks.UserAccessTokenStore 46 PluginStore mocks.PluginStore 47 ChannelMemberHistoryStore mocks.ChannelMemberHistoryStore 48 RoleStore mocks.RoleStore 49 SchemeStore mocks.SchemeStore 50 TermsOfServiceStore mocks.TermsOfServiceStore 51 GroupStore mocks.GroupStore 52 UserTermsOfServiceStore mocks.UserTermsOfServiceStore 53 LinkMetadataStore mocks.LinkMetadataStore 54 SharedChannelStore mocks.SharedChannelStore 55 ProductNoticesStore mocks.ProductNoticesStore 56 TrackPointStore mocks.TrackPointStore 57 TrackRecordStore mocks.TrackRecordStore 58 context context.Context 59 } 60 61 func (s *Store) SetContext(context context.Context) { s.context = context } 62 func (s *Store) Context() context.Context { return s.context } 63 func (s *Store) Team() store.TeamStore { return &s.TeamStore } 64 func (s *Store) Channel() store.ChannelStore { return &s.ChannelStore } 65 func (s *Store) Post() store.PostStore { return &s.PostStore } 66 func (s *Store) User() store.UserStore { return &s.UserStore } 67 func (s *Store) RetentionPolicy() store.RetentionPolicyStore { return &s.RetentionPolicyStore } 68 func (s *Store) Bot() store.BotStore { return &s.BotStore } 69 func (s *Store) ProductNotices() store.ProductNoticesStore { return &s.ProductNoticesStore } 70 func (s *Store) Audit() store.AuditStore { return &s.AuditStore } 71 func (s *Store) ClusterDiscovery() store.ClusterDiscoveryStore { return &s.ClusterDiscoveryStore } 72 func (s *Store) RemoteCluster() store.RemoteClusterStore { return &s.RemoteClusterStore } 73 func (s *Store) Compliance() store.ComplianceStore { return &s.ComplianceStore } 74 func (s *Store) Session() store.SessionStore { return &s.SessionStore } 75 func (s *Store) OAuth() store.OAuthStore { return &s.OAuthStore } 76 func (s *Store) System() store.SystemStore { return &s.SystemStore } 77 func (s *Store) Webhook() store.WebhookStore { return &s.WebhookStore } 78 func (s *Store) Command() store.CommandStore { return &s.CommandStore } 79 func (s *Store) CommandWebhook() store.CommandWebhookStore { return &s.CommandWebhookStore } 80 func (s *Store) Preference() store.PreferenceStore { return &s.PreferenceStore } 81 func (s *Store) License() store.LicenseStore { return &s.LicenseStore } 82 func (s *Store) Token() store.TokenStore { return &s.TokenStore } 83 func (s *Store) Emoji() store.EmojiStore { return &s.EmojiStore } 84 func (s *Store) Thread() store.ThreadStore { return &s.ThreadStore } 85 func (s *Store) Status() store.StatusStore { return &s.StatusStore } 86 func (s *Store) FileInfo() store.FileInfoStore { return &s.FileInfoStore } 87 func (s *Store) UploadSession() store.UploadSessionStore { return &s.UploadSessionStore } 88 func (s *Store) Reaction() store.ReactionStore { return &s.ReactionStore } 89 func (s *Store) Job() store.JobStore { return &s.JobStore } 90 func (s *Store) UserAccessToken() store.UserAccessTokenStore { return &s.UserAccessTokenStore } 91 func (s *Store) Plugin() store.PluginStore { return &s.PluginStore } 92 func (s *Store) Role() store.RoleStore { return &s.RoleStore } 93 func (s *Store) Scheme() store.SchemeStore { return &s.SchemeStore } 94 func (s *Store) TrackPoint() store.TrackPointStore { return &s.TrackPointStore } 95 func (s *Store) TrackRecord() store.TrackRecordStore { return &s.TrackRecordStore } 96 func (s *Store) ChannelMemberHistory() store.ChannelMemberHistoryStore { 97 return &s.ChannelMemberHistoryStore 98 } 99 func (s *Store) Group() store.GroupStore { return &s.GroupStore } 100 func (s *Store) LinkMetadata() store.LinkMetadataStore { return &s.LinkMetadataStore } 101 func (s *Store) SharedChannel() store.SharedChannelStore { return &s.SharedChannelStore } 102 func (s *Store) TermsOfService() store.TermsOfServiceStore { return &s.TermsOfServiceStore } 103 func (s *Store) UserTermsOfService() store.UserTermsOfServiceStore { return &s.UserTermsOfServiceStore } 104 func (s *Store) MarkSystemRanUnitTests() { /* do nothing */ } 105 func (s *Store) Close() { /* do nothing */ } 106 func (s *Store) LockToMaster() { /* do nothing */ } 107 func (s *Store) UnlockFromMaster() { /* do nothing */ } 108 func (s *Store) DropAllTables() { /* do nothing */ } 109 func (s *Store) GetDbVersion(bool) (string, error) { return "", nil } 110 func (s *Store) RecycleDBConnections(time.Duration) {} 111 func (s *Store) TotalMasterDbConnections() int { return 1 } 112 func (s *Store) TotalReadDbConnections() int { return 1 } 113 func (s *Store) TotalSearchDbConnections() int { return 1 } 114 func (s *Store) GetCurrentSchemaVersion() string { return "" } 115 func (s *Store) CheckIntegrity() <-chan model.IntegrityCheckResult { 116 return make(chan model.IntegrityCheckResult) 117 } 118 func (s *Store) ReplicaLagAbs() error { return nil } 119 func (s *Store) ReplicaLagTime() error { return nil } 120 121 func (s *Store) AssertExpectations(t mock.TestingT) bool { 122 return mock.AssertExpectationsForObjects(t, 123 &s.TeamStore, 124 &s.ChannelStore, 125 &s.PostStore, 126 &s.UserStore, 127 &s.BotStore, 128 &s.AuditStore, 129 &s.ClusterDiscoveryStore, 130 &s.RemoteClusterStore, 131 &s.ComplianceStore, 132 &s.SessionStore, 133 &s.OAuthStore, 134 &s.SystemStore, 135 &s.WebhookStore, 136 &s.CommandStore, 137 &s.CommandWebhookStore, 138 &s.PreferenceStore, 139 &s.LicenseStore, 140 &s.TokenStore, 141 &s.EmojiStore, 142 &s.StatusStore, 143 &s.FileInfoStore, 144 &s.UploadSessionStore, 145 &s.ReactionStore, 146 &s.JobStore, 147 &s.UserAccessTokenStore, 148 &s.ChannelMemberHistoryStore, 149 &s.PluginStore, 150 &s.RoleStore, 151 &s.SchemeStore, 152 &s.ThreadStore, 153 &s.ProductNoticesStore, 154 &s.SharedChannelStore, 155 &s.TrackPointStore, 156 &s.TrackRecordStore, 157 ) 158 }