mocked_model_test.go 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. // Copyright (C) 2016 The Syncthing Authors.
  2. //
  3. // This Source Code Form is subject to the terms of the Mozilla Public
  4. // License, v. 2.0. If a copy of the MPL was not distributed with this file,
  5. // You can obtain one at https://mozilla.org/MPL/2.0/.
  6. package api
  7. import (
  8. "context"
  9. "net"
  10. "time"
  11. "github.com/syncthing/syncthing/lib/db"
  12. "github.com/syncthing/syncthing/lib/model"
  13. "github.com/syncthing/syncthing/lib/protocol"
  14. "github.com/syncthing/syncthing/lib/stats"
  15. "github.com/syncthing/syncthing/lib/ur/contract"
  16. "github.com/syncthing/syncthing/lib/versioner"
  17. )
  18. type mockedModel struct{}
  19. func (m *mockedModel) GlobalDirectoryTree(folder, prefix string, levels int, dirsOnly bool) ([]*model.TreeEntry, error) {
  20. return nil, nil
  21. }
  22. func (m *mockedModel) Completion(device protocol.DeviceID, folder string) model.FolderCompletion {
  23. return model.FolderCompletion{}
  24. }
  25. func (m *mockedModel) Override(folder string) {}
  26. func (m *mockedModel) Revert(folder string) {}
  27. func (m *mockedModel) NeedFolderFiles(folder string, page, perpage int) ([]db.FileInfoTruncated, []db.FileInfoTruncated, []db.FileInfoTruncated, error) {
  28. return nil, nil, nil, nil
  29. }
  30. func (*mockedModel) RemoteNeedFolderFiles(folder string, device protocol.DeviceID, page, perpage int) ([]db.FileInfoTruncated, error) {
  31. return nil, nil
  32. }
  33. func (*mockedModel) LocalChangedFolderFiles(folder string, page, perpage int) ([]db.FileInfoTruncated, error) {
  34. return nil, nil
  35. }
  36. func (m *mockedModel) FolderProgressBytesCompleted(_ string) int64 {
  37. return 0
  38. }
  39. func (m *mockedModel) NumConnections() int {
  40. return 0
  41. }
  42. func (m *mockedModel) ConnectionStats() map[string]interface{} {
  43. return nil
  44. }
  45. func (m *mockedModel) DeviceStatistics() (map[protocol.DeviceID]stats.DeviceStatistics, error) {
  46. return nil, nil
  47. }
  48. func (m *mockedModel) FolderStatistics() (map[string]stats.FolderStatistics, error) {
  49. return nil, nil
  50. }
  51. func (m *mockedModel) CurrentFolderFile(folder string, file string) (protocol.FileInfo, bool) {
  52. return protocol.FileInfo{}, false
  53. }
  54. func (m *mockedModel) CurrentGlobalFile(folder string, file string) (protocol.FileInfo, bool) {
  55. return protocol.FileInfo{}, false
  56. }
  57. func (m *mockedModel) ResetFolder(folder string) {
  58. }
  59. func (m *mockedModel) Availability(folder string, file protocol.FileInfo, block protocol.BlockInfo) []model.Availability {
  60. return nil
  61. }
  62. func (m *mockedModel) LoadIgnores(folder string) ([]string, []string, error) {
  63. return nil, nil, nil
  64. }
  65. func (m *mockedModel) CurrentIgnores(folder string) ([]string, []string, error) {
  66. return nil, nil, nil
  67. }
  68. func (m *mockedModel) SetIgnores(folder string, content []string) error {
  69. return nil
  70. }
  71. func (m *mockedModel) GetFolderVersions(folder string) (map[string][]versioner.FileVersion, error) {
  72. return nil, nil
  73. }
  74. func (m *mockedModel) RestoreFolderVersions(folder string, versions map[string]time.Time) (map[string]error, error) {
  75. return nil, nil
  76. }
  77. func (m *mockedModel) PauseDevice(device protocol.DeviceID) {
  78. }
  79. func (m *mockedModel) ResumeDevice(device protocol.DeviceID) {}
  80. func (m *mockedModel) DelayScan(folder string, next time.Duration) {}
  81. func (m *mockedModel) ScanFolder(folder string) error {
  82. return nil
  83. }
  84. func (m *mockedModel) ScanFolders() map[string]error {
  85. return nil
  86. }
  87. func (m *mockedModel) ScanFolderSubdirs(folder string, subs []string) error {
  88. return nil
  89. }
  90. func (m *mockedModel) BringToFront(folder, file string) {}
  91. func (m *mockedModel) Connection(deviceID protocol.DeviceID) (protocol.Connection, bool) {
  92. return nil, false
  93. }
  94. func (m *mockedModel) State(folder string) (string, time.Time, error) {
  95. return "", time.Time{}, nil
  96. }
  97. func (m *mockedModel) UsageReportingStats(r *contract.Report, version int, preview bool) {
  98. }
  99. func (m *mockedModel) PendingDevices() (map[protocol.DeviceID]db.ObservedDevice, error) {
  100. return nil, nil
  101. }
  102. func (m *mockedModel) PendingFolders(device protocol.DeviceID) (map[string]db.PendingFolder, error) {
  103. return nil, nil
  104. }
  105. func (m *mockedModel) FolderErrors(folder string) ([]model.FileError, error) {
  106. return nil, nil
  107. }
  108. func (m *mockedModel) WatchError(folder string) error {
  109. return nil
  110. }
  111. func (m *mockedModel) Serve(ctx context.Context) error { return nil }
  112. func (m *mockedModel) Index(deviceID protocol.DeviceID, folder string, files []protocol.FileInfo) error {
  113. return nil
  114. }
  115. func (m *mockedModel) IndexUpdate(deviceID protocol.DeviceID, folder string, files []protocol.FileInfo) error {
  116. return nil
  117. }
  118. func (m *mockedModel) Request(deviceID protocol.DeviceID, folder, name string, blockNo, size int32, offset int64, hash []byte, weakHash uint32, fromTemporary bool) (protocol.RequestResponse, error) {
  119. return nil, nil
  120. }
  121. func (m *mockedModel) ClusterConfig(deviceID protocol.DeviceID, config protocol.ClusterConfig) error {
  122. return nil
  123. }
  124. func (m *mockedModel) Closed(conn protocol.Connection, err error) {}
  125. func (m *mockedModel) DownloadProgress(deviceID protocol.DeviceID, folder string, updates []protocol.FileDownloadProgressUpdate) error {
  126. return nil
  127. }
  128. func (m *mockedModel) AddConnection(conn protocol.Connection, hello protocol.Hello) {}
  129. func (m *mockedModel) OnHello(protocol.DeviceID, net.Addr, protocol.Hello) error {
  130. return nil
  131. }
  132. func (m *mockedModel) GetHello(protocol.DeviceID) protocol.HelloIntf {
  133. return nil
  134. }
  135. func (m *mockedModel) StartDeadlockDetector(timeout time.Duration) {}
  136. func (m *mockedModel) DBSnapshot(_ string) (*db.Snapshot, error) {
  137. return nil, nil
  138. }
  139. type mockedFolderSummaryService struct{}
  140. func (m *mockedFolderSummaryService) Serve(context.Context) error { return nil }
  141. func (m *mockedFolderSummaryService) Summary(folder string) (map[string]interface{}, error) {
  142. return map[string]interface{}{"mocked": true}, nil
  143. }
  144. func (m *mockedFolderSummaryService) OnEventRequest() {}