executor.go 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. package mock
  2. import (
  3. "time"
  4. "github.com/Jguer/yay/v12/pkg/db"
  5. "github.com/Jguer/yay/v12/pkg/text"
  6. "github.com/Jguer/go-alpm/v2"
  7. )
  8. type (
  9. IPackage = alpm.IPackage
  10. Depend = alpm.Depend
  11. Upgrade = db.Upgrade
  12. )
  13. type DBExecutor struct {
  14. db.Executor
  15. AlpmArchitecturesFn func() ([]string, error)
  16. InstalledRemotePackageNamesFn func() []string
  17. InstalledRemotePackagesFn func() map[string]IPackage
  18. IsCorrectVersionInstalledFn func(string, string) bool
  19. LocalPackageFn func(string) IPackage
  20. LocalPackagesFn func() []IPackage
  21. LocalSatisfierExistsFn func(string) bool
  22. PackageDependsFn func(IPackage) []Depend
  23. PackageOptionalDependsFn func(alpm.IPackage) []alpm.Depend
  24. PackageProvidesFn func(IPackage) []Depend
  25. PackagesFromGroupFn func(string) []IPackage
  26. RefreshHandleFn func() error
  27. ReposFn func() []string
  28. SyncPackageFn func(string) IPackage
  29. SyncPackagesFn func(...string) []IPackage
  30. SyncSatisfierFn func(string) IPackage
  31. SyncUpgradesFn func(bool) (map[string]db.SyncUpgrade, error)
  32. SetLoggerFn func(*text.Logger)
  33. }
  34. func (t *DBExecutor) InstalledRemotePackageNames() []string {
  35. if t.InstalledRemotePackageNamesFn != nil {
  36. return t.InstalledRemotePackageNamesFn()
  37. }
  38. panic("implement me")
  39. }
  40. func (t *DBExecutor) InstalledRemotePackages() map[string]IPackage {
  41. if t.InstalledRemotePackagesFn != nil {
  42. return t.InstalledRemotePackagesFn()
  43. }
  44. panic("implement me")
  45. }
  46. func (t *DBExecutor) AlpmArchitectures() ([]string, error) {
  47. if t.AlpmArchitecturesFn != nil {
  48. return t.AlpmArchitecturesFn()
  49. }
  50. panic("implement me")
  51. }
  52. func (t *DBExecutor) BiggestPackages() []IPackage {
  53. panic("implement me")
  54. }
  55. func (t *DBExecutor) Cleanup() {
  56. panic("implement me")
  57. }
  58. func (t *DBExecutor) IsCorrectVersionInstalled(s, s2 string) bool {
  59. if t.IsCorrectVersionInstalledFn != nil {
  60. return t.IsCorrectVersionInstalledFn(s, s2)
  61. }
  62. panic("implement me")
  63. }
  64. func (t *DBExecutor) LastBuildTime() time.Time {
  65. panic("implement me")
  66. }
  67. func (t *DBExecutor) LocalPackage(s string) IPackage {
  68. if t.LocalPackageFn != nil {
  69. return t.LocalPackageFn(s)
  70. }
  71. panic("implement me")
  72. }
  73. func (t *DBExecutor) LocalPackages() []IPackage {
  74. if t.LocalPackagesFn != nil {
  75. return t.LocalPackagesFn()
  76. }
  77. panic("implement me")
  78. }
  79. func (t *DBExecutor) LocalSatisfierExists(s string) bool {
  80. if t.LocalSatisfierExistsFn != nil {
  81. return t.LocalSatisfierExistsFn(s)
  82. }
  83. panic("implement me")
  84. }
  85. func (t *DBExecutor) PackageConflicts(iPackage IPackage) []Depend {
  86. panic("implement me")
  87. }
  88. func (t *DBExecutor) PackageDepends(iPackage IPackage) []Depend {
  89. if t.PackageDependsFn != nil {
  90. return t.PackageDependsFn(iPackage)
  91. }
  92. panic("implement me")
  93. }
  94. func (t *DBExecutor) PackageGroups(iPackage IPackage) []string {
  95. return []string{}
  96. }
  97. func (t *DBExecutor) PackageOptionalDepends(iPackage IPackage) []Depend {
  98. if t.PackageOptionalDependsFn != nil {
  99. return t.PackageOptionalDependsFn(iPackage)
  100. }
  101. panic("implement me")
  102. }
  103. func (t *DBExecutor) PackageProvides(iPackage IPackage) []Depend {
  104. if t.PackageProvidesFn != nil {
  105. return t.PackageProvidesFn(iPackage)
  106. }
  107. panic("implement me")
  108. }
  109. func (t *DBExecutor) PackagesFromGroup(s string) []IPackage {
  110. if t.PackagesFromGroupFn != nil {
  111. return t.PackagesFromGroupFn(s)
  112. }
  113. panic("implement me")
  114. }
  115. func (t *DBExecutor) RefreshHandle() error {
  116. if t.RefreshHandleFn != nil {
  117. return t.RefreshHandleFn()
  118. }
  119. panic("implement me")
  120. }
  121. func (t *DBExecutor) SyncUpgrades(b bool) (map[string]db.SyncUpgrade, error) {
  122. if t.SyncUpgradesFn != nil {
  123. return t.SyncUpgradesFn(b)
  124. }
  125. panic("implement me")
  126. }
  127. func (t *DBExecutor) Repos() []string {
  128. if t.ReposFn != nil {
  129. return t.ReposFn()
  130. }
  131. panic("implement me")
  132. }
  133. func (t *DBExecutor) SatisfierFromDB(s, s2 string) IPackage {
  134. panic("implement me")
  135. }
  136. func (t *DBExecutor) SyncPackage(s string) IPackage {
  137. if t.SyncPackageFn != nil {
  138. return t.SyncPackageFn(s)
  139. }
  140. panic("implement me")
  141. }
  142. func (t *DBExecutor) SyncPackages(s ...string) []IPackage {
  143. if t.SyncPackagesFn != nil {
  144. return t.SyncPackagesFn(s...)
  145. }
  146. panic("implement me")
  147. }
  148. func (t *DBExecutor) SyncSatisfier(s string) IPackage {
  149. if t.SyncSatisfierFn != nil {
  150. return t.SyncSatisfierFn(s)
  151. }
  152. panic("implement me")
  153. }
  154. func (t *DBExecutor) SyncSatisfierExists(s string) bool {
  155. if t.SyncSatisfierFn != nil {
  156. return t.SyncSatisfierFn(s) != nil
  157. }
  158. panic("implement me")
  159. }
  160. func (t *DBExecutor) SetLogger(logger *text.Logger) {
  161. if t.SetLoggerFn != nil {
  162. t.SetLoggerFn(logger)
  163. return
  164. }
  165. panic("implement me")
  166. }