mocked_model_test.go 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  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/connections"
  12. "github.com/syncthing/syncthing/lib/db"
  13. "github.com/syncthing/syncthing/lib/model"
  14. "github.com/syncthing/syncthing/lib/protocol"
  15. "github.com/syncthing/syncthing/lib/stats"
  16. "github.com/syncthing/syncthing/lib/ur/contract"
  17. "github.com/syncthing/syncthing/lib/versioner"
  18. )
  19. type mockedModel struct{}
  20. func (m *mockedModel) GlobalDirectoryTree(folder, prefix string, levels int, dirsonly bool) map[string]interface{} {
  21. return nil
  22. }
  23. func (m *mockedModel) Completion(device protocol.DeviceID, folder string) model.FolderCompletion {
  24. return model.FolderCompletion{}
  25. }
  26. func (m *mockedModel) Override(folder string) {}
  27. func (m *mockedModel) Revert(folder string) {}
  28. func (m *mockedModel) NeedFolderFiles(folder string, page, perpage int) ([]db.FileInfoTruncated, []db.FileInfoTruncated, []db.FileInfoTruncated, error) {
  29. return nil, nil, nil, nil
  30. }
  31. func (*mockedModel) RemoteNeedFolderFiles(folder string, device protocol.DeviceID, page, perpage int) ([]db.FileInfoTruncated, error) {
  32. return nil, nil
  33. }
  34. func (*mockedModel) LocalChangedFolderFiles(folder string, page, perpage int) ([]db.FileInfoTruncated, error) {
  35. return nil, nil
  36. }
  37. func (m *mockedModel) FolderProgressBytesCompleted(_ string) int64 {
  38. return 0
  39. }
  40. func (m *mockedModel) ConnectionStats() map[string]interface{} {
  41. return nil
  42. }
  43. func (m *mockedModel) DeviceStatistics() (map[string]stats.DeviceStatistics, error) {
  44. return nil, nil
  45. }
  46. func (m *mockedModel) FolderStatistics() (map[string]stats.FolderStatistics, error) {
  47. return nil, nil
  48. }
  49. func (m *mockedModel) CurrentFolderFile(folder string, file string) (protocol.FileInfo, bool) {
  50. return protocol.FileInfo{}, false
  51. }
  52. func (m *mockedModel) CurrentGlobalFile(folder string, file string) (protocol.FileInfo, bool) {
  53. return protocol.FileInfo{}, false
  54. }
  55. func (m *mockedModel) ResetFolder(folder string) {
  56. }
  57. func (m *mockedModel) Availability(folder string, file protocol.FileInfo, block protocol.BlockInfo) []model.Availability {
  58. return nil
  59. }
  60. func (m *mockedModel) GetIgnores(folder string) ([]string, []string, error) {
  61. return nil, nil, nil
  62. }
  63. func (m *mockedModel) SetIgnores(folder string, content []string) error {
  64. return nil
  65. }
  66. func (m *mockedModel) GetFolderVersions(folder string) (map[string][]versioner.FileVersion, error) {
  67. return nil, nil
  68. }
  69. func (m *mockedModel) RestoreFolderVersions(folder string, versions map[string]time.Time) (map[string]string, error) {
  70. return nil, nil
  71. }
  72. func (m *mockedModel) PauseDevice(device protocol.DeviceID) {
  73. }
  74. func (m *mockedModel) ResumeDevice(device protocol.DeviceID) {}
  75. func (m *mockedModel) DelayScan(folder string, next time.Duration) {}
  76. func (m *mockedModel) ScanFolder(folder string) error {
  77. return nil
  78. }
  79. func (m *mockedModel) ScanFolders() map[string]error {
  80. return nil
  81. }
  82. func (m *mockedModel) ScanFolderSubdirs(folder string, subs []string) error {
  83. return nil
  84. }
  85. func (m *mockedModel) BringToFront(folder, file string) {}
  86. func (m *mockedModel) Connection(deviceID protocol.DeviceID) (connections.Connection, bool) {
  87. return nil, false
  88. }
  89. func (m *mockedModel) State(folder string) (string, time.Time, error) {
  90. return "", time.Time{}, nil
  91. }
  92. func (m *mockedModel) UsageReportingStats(r *contract.Report, version int, preview bool) {
  93. }
  94. func (m *mockedModel) FolderErrors(folder string) ([]model.FileError, error) {
  95. return nil, nil
  96. }
  97. func (m *mockedModel) WatchError(folder string) error {
  98. return nil
  99. }
  100. func (m *mockedModel) Serve(ctx context.Context) error { return nil }
  101. func (m *mockedModel) Index(deviceID protocol.DeviceID, folder string, files []protocol.FileInfo) error {
  102. return nil
  103. }
  104. func (m *mockedModel) IndexUpdate(deviceID protocol.DeviceID, folder string, files []protocol.FileInfo) error {
  105. return nil
  106. }
  107. func (m *mockedModel) Request(deviceID protocol.DeviceID, folder, name string, blockNo, size int32, offset int64, hash []byte, weakHash uint32, fromTemporary bool) (protocol.RequestResponse, error) {
  108. return nil, nil
  109. }
  110. func (m *mockedModel) ClusterConfig(deviceID protocol.DeviceID, config protocol.ClusterConfig) error {
  111. return nil
  112. }
  113. func (m *mockedModel) Closed(conn protocol.Connection, err error) {}
  114. func (m *mockedModel) DownloadProgress(deviceID protocol.DeviceID, folder string, updates []protocol.FileDownloadProgressUpdate) error {
  115. return nil
  116. }
  117. func (m *mockedModel) AddConnection(conn connections.Connection, hello protocol.Hello) {}
  118. func (m *mockedModel) OnHello(protocol.DeviceID, net.Addr, protocol.Hello) error {
  119. return nil
  120. }
  121. func (m *mockedModel) GetHello(protocol.DeviceID) protocol.HelloIntf {
  122. return nil
  123. }
  124. func (m *mockedModel) StartDeadlockDetector(timeout time.Duration) {}
  125. func (m *mockedModel) DBSnapshot(_ string) (*db.Snapshot, error) {
  126. return nil, nil
  127. }
  128. type mockedFolderSummaryService struct{}
  129. func (m *mockedFolderSummaryService) Serve(context.Context) error { return nil }
  130. func (m *mockedFolderSummaryService) Summary(folder string) (map[string]interface{}, error) {
  131. return map[string]interface{}{"mocked": true}, nil
  132. }
  133. func (m *mockedFolderSummaryService) OnEventRequest() {}