types.tsx 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. import {EntryException, ReleaseMeta} from 'sentry/types';
  2. import type {
  3. ReplayError,
  4. ReplayListRecord,
  5. ReplayRecord,
  6. } from 'sentry/views/replays/types';
  7. import type {Replay} from './replay';
  8. import {MockRuleCondition} from './ruleConditions';
  9. type SimpleStub<T = any> = () => T;
  10. type OverridableStub<Params = any, Result = Params> = (
  11. params?: Partial<Params>
  12. ) => Result;
  13. type OverridableVariadicStub<Params = any, Result = Params> = (
  14. ...params: Array<Partial<Params>>
  15. ) => Result;
  16. type OverridableStubList<Params = any, Result = Params> = (
  17. params?: Array<Partial<Params>>
  18. ) => Result[];
  19. type TestStubFixtures = {
  20. ApiToken: OverridableStub;
  21. AvailableNotificationActions: OverridableStub;
  22. CodeOwner: OverridableStub;
  23. Config: OverridableStub;
  24. Dashboard: OverridableVariadicStub;
  25. DocIntegration: OverridableStub;
  26. Environments: SimpleStub;
  27. Event: OverridableStub;
  28. EventAttachment: OverridableStub;
  29. EventEntry: OverridableStub;
  30. EventEntryDebugMeta: OverridableStub;
  31. EventEntryExceptionGroup: SimpleStub<EntryException>;
  32. EventEntryStacktrace: OverridableStub;
  33. EventIdQueryResult: OverridableStub;
  34. EventStacktraceException: OverridableStub;
  35. EventStacktraceMessage: OverridableStub;
  36. EventsStats: OverridableStub;
  37. ExceptionWithRawStackTrace: OverridableStub;
  38. Frame: OverridableStub;
  39. GitHubIntegration: OverridableStub;
  40. GitHubIntegrationConfig: SimpleStub;
  41. GitHubIntegrationProvider: OverridableStub;
  42. GlobalSelection: OverridableStub;
  43. Group: OverridableStub;
  44. GroupStats: OverridableStub;
  45. GroupingConfigs: SimpleStub;
  46. Groups: SimpleStub;
  47. HiddenEnvironments: SimpleStub;
  48. Incident: OverridableStub;
  49. IncidentActivity: OverridableStub;
  50. IncidentStats: OverridableStub;
  51. IncidentTrigger: OverridableStub;
  52. InstallWizard: OverridableStub;
  53. JiraIntegration: OverridableStub;
  54. JiraIntegrationProvider: OverridableStub;
  55. MOCK_RESP_INCONSISTENT_INTERVALS: MockRuleCondition;
  56. MOCK_RESP_INCONSISTENT_PLACEHOLDERS: MockRuleCondition;
  57. MOCK_RESP_ONLY_IGNORED_CONDITIONS_INVALID: MockRuleCondition;
  58. MOCK_RESP_PLACEHOLDERS: MockRuleCondition;
  59. MOCK_RESP_VERBOSE: MockRuleCondition;
  60. Member: OverridableStub;
  61. Members: OverridableStubList;
  62. MetricRule: OverridableStub;
  63. MetricsField: (field: string, params?: Partial<any>) => any;
  64. MetricsMeta: OverridableStub;
  65. MetricsSessionUserCountByStatusByRelease: SimpleStub;
  66. MetricsTotalCountByReleaseIn24h: SimpleStub;
  67. MissingMembers: OverridableStubList;
  68. NotificationDefaults: SimpleStub;
  69. OpsgenieIntegration: OverridableStub;
  70. OpsgenieIntegrationProvider: OverridableStub;
  71. OrgOwnedApps: SimpleStub;
  72. OrgRoleList: OverridableStub;
  73. Organization: OverridableStub;
  74. OrganizationEvent: OverridableStub;
  75. OrganizationIntegrations: OverridableStub;
  76. Organizations: OverridableStub;
  77. Outcomes: SimpleStub;
  78. OutcomesWithLowProcessedEvents: SimpleStub;
  79. OutcomesWithReason: SimpleStub;
  80. OutcomesWithoutClientDiscarded: SimpleStub;
  81. PageFilters: OverridableStub;
  82. PhabricatorCreate: SimpleStub;
  83. PhabricatorPlugin: SimpleStub;
  84. PlatformExternalIssue: OverridableStub;
  85. Plugin: OverridableStub;
  86. PluginListConfig: SimpleStub;
  87. Plugins: OverridableStubList;
  88. Project: OverridableStub;
  89. ProjectAlertRule: OverridableStub;
  90. ProjectAlertRuleConfiguration: OverridableStub;
  91. ProjectDetails: OverridableStub;
  92. ProjectFilters: OverridableStubList;
  93. ProjectKeys: OverridableStubList;
  94. ProviderList: SimpleStub;
  95. PublishedApps: SimpleStub;
  96. PullRequest: OverridableStub;
  97. Release: (params?: any, healthParams?: any) => any;
  98. ReleaseMeta: OverridableStub<ReleaseMeta>;
  99. Replay: typeof Replay;
  100. ReplayError: OverridableStub<ReplayError>;
  101. ReplayList: OverridableStubList<ReplayListRecord>;
  102. ReplayRecord: OverridableStub<ReplayRecord>;
  103. Repository: OverridableStub;
  104. RepositoryProjectPathConfig: OverridableStub;
  105. Search: OverridableStub;
  106. Searches: OverridableStubList;
  107. SentryApp: OverridableStub;
  108. SentryAppComponent: OverridableStub;
  109. SentryAppComponentAsync: OverridableStub;
  110. SentryAppComponentDependent: OverridableStub;
  111. SentryAppInstallation: OverridableStub;
  112. SentryAppInstalls: SimpleStub;
  113. SentryAppToken: OverridableStub;
  114. SentryAppWebhookRequest: OverridableStub;
  115. ServiceIncident: OverridableStub;
  116. SessionEmptyGroupedResponse: SimpleStub;
  117. SessionStatusCountByProjectInPeriod: SimpleStub;
  118. SessionStatusCountByReleaseInPeriod: SimpleStub;
  119. SessionTotalCountByProjectIn24h: SimpleStub;
  120. SessionUserCountByStatus: SimpleStub;
  121. SessionUserCountByStatus2: SimpleStub;
  122. SessionUserCountByStatusByRelease: SimpleStub;
  123. SessionUserStatusCountByProjectInPeriod: SimpleStub;
  124. SessionUserStatusCountByReleaseInPeriod: SimpleStub;
  125. SessionsField: (field: string) => any;
  126. SesssionTotalCountByReleaseIn24h: SimpleStub;
  127. ShortIdQueryResult: OverridableStub;
  128. SourceMapArchive: OverridableStub;
  129. SourceMapArtifact: OverridableStub;
  130. SourceMapsDebugIDBundles: OverridableStub;
  131. SourceMapsDebugIDBundlesArtifacts: OverridableStub;
  132. Span: OverridableStub;
  133. Subscriptions: OverridableStubList;
  134. TagValues: OverridableStubList;
  135. Tags: OverridableStubList;
  136. Team: OverridableStub;
  137. TeamAlertsTriggered: SimpleStub;
  138. TeamIssuesBreakdown: SimpleStub;
  139. TeamIssuesReviewed: SimpleStub;
  140. TeamReleaseCounts: SimpleStub;
  141. TeamResolutionTime: SimpleStub;
  142. TeamRoleList: OverridableStub;
  143. Tombstones: OverridableStubList;
  144. TraceError: OverridableStub;
  145. UpdateSdkAndEnableIntegrationSuggestion: SimpleStub;
  146. User: OverridableStub;
  147. UserDetails: OverridableStub;
  148. UserFeedback: OverridableStub;
  149. UserIdentity: SimpleStub;
  150. UserTotalCountByProjectIn24h: SimpleStub;
  151. UserTotalCountByReleaseIn24h: SimpleStub;
  152. VercelProvider: SimpleStub;
  153. VstsCreate: SimpleStub;
  154. VstsIntegrationProvider: OverridableStub;
  155. VstsPlugin: SimpleStub;
  156. Widget: OverridableVariadicStub;
  157. // TODO: These need propertly typed still
  158. // Widget(queries = {...DEFAULT_QUERIES}, options)
  159. // Dashboard(widgets = DEFAULT_WIDGETS, props = {})
  160. // AsanaAutocomplete(type = 'project', values = [DEFAULT_AUTOCOMPLETE])
  161. // PhabricatorAutocomplete(type = 'project', values = null)
  162. // RoleList(params = [], fullAccess = false)
  163. };
  164. export default TestStubFixtures;