testing-utils.ts 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. export function getMockSchemaInfo() {
  2. return {
  3. schemaInfo: {
  4. types: {
  5. Query: {
  6. products: ['ProductList', false, false, true],
  7. product: ['Product', false, false, false],
  8. collection: ['Collection', false, false, false],
  9. order: ['Order', false, false, false],
  10. },
  11. Mutation: {
  12. updateProduct: ['Product', false, false, false],
  13. adjustDraftOrderLine: ['Order', false, false, false],
  14. },
  15. Collection: {
  16. id: ['ID', false, false, false],
  17. name: ['String', false, false, false],
  18. productVariants: ['ProductVariantList', false, false, true],
  19. },
  20. ProductVariantList: {
  21. items: ['ProductVariant', false, true, false],
  22. totalItems: ['Int', false, false, false],
  23. },
  24. Product: {
  25. channels: ['Channel', false, true, false],
  26. id: ['ID', false, false, false],
  27. createdAt: ['DateTime', false, false, false],
  28. updatedAt: ['DateTime', false, false, false],
  29. languageCode: ['LanguageCode', false, false, false],
  30. name: ['String', false, false, false],
  31. slug: ['String', false, false, false],
  32. description: ['String', false, false, false],
  33. enabled: ['Boolean', false, false, false],
  34. featuredAsset: ['Asset', true, false, false],
  35. assets: ['Asset', false, true, false],
  36. variants: ['ProductVariant', false, true, false],
  37. variantList: ['ProductVariantList', false, false, true],
  38. optionGroups: ['ProductOptionGroup', false, true, false],
  39. facetValues: ['FacetValue', false, true, false],
  40. translations: ['ProductTranslation', false, true, false],
  41. collections: ['Collection', false, true, false],
  42. reviews: ['ProductReviewList', false, false, true],
  43. reviewsHistogram: ['ProductReviewHistogramItem', false, true, false],
  44. customFields: ['ProductCustomFields', true, false, false],
  45. },
  46. ProductVariantPrice: {
  47. currencyCode: ['CurrencyCode', false, false, false],
  48. price: ['Money', false, false, false],
  49. customFields: ['JSON', true, false, false],
  50. },
  51. ProductVariant: {
  52. enabled: ['Boolean', false, false, false],
  53. trackInventory: ['GlobalFlag', false, false, false],
  54. stockOnHand: ['Int', false, false, false],
  55. stockAllocated: ['Int', false, false, false],
  56. outOfStockThreshold: ['Int', false, false, false],
  57. useGlobalOutOfStockThreshold: ['Boolean', false, false, false],
  58. prices: ['ProductVariantPrice', false, true, false],
  59. stockLevels: ['StockLevel', false, true, false],
  60. stockMovements: ['StockMovementList', false, false, false],
  61. channels: ['Channel', false, true, false],
  62. id: ['ID', false, false, false],
  63. product: ['Product', false, false, false],
  64. productId: ['ID', false, false, false],
  65. createdAt: ['DateTime', false, false, false],
  66. updatedAt: ['DateTime', false, false, false],
  67. languageCode: ['LanguageCode', false, false, false],
  68. sku: ['String', false, false, false],
  69. name: ['String', false, false, false],
  70. featuredAsset: ['Asset', true, false, false],
  71. assets: ['Asset', false, true, false],
  72. price: ['Money', false, false, false],
  73. currencyCode: ['CurrencyCode', false, false, false],
  74. priceWithTax: ['Money', false, false, false],
  75. stockLevel: ['String', false, false, false],
  76. taxRateApplied: ['TaxRate', false, false, false],
  77. taxCategory: ['TaxCategory', false, false, false],
  78. options: ['ProductOption', false, true, false],
  79. facetValues: ['FacetValue', false, true, false],
  80. translations: ['ProductVariantTranslation', false, true, false],
  81. customFields: ['JSON', true, false, false],
  82. },
  83. ProductCustomFields: {
  84. custom1: ['String', false, false, false],
  85. },
  86. Asset: {
  87. id: ['ID', false, false, false],
  88. createdAt: ['DateTime', false, false, false],
  89. updatedAt: ['DateTime', false, false, false],
  90. name: ['String', false, false, false],
  91. type: ['AssetType', false, false, false],
  92. fileSize: ['Int', false, false, false],
  93. mimeType: ['String', false, false, false],
  94. width: ['Int', false, false, false],
  95. height: ['Int', false, false, false],
  96. source: ['String', false, false, false],
  97. preview: ['String', false, false, false],
  98. focalPoint: ['Coordinate', true, false, false],
  99. tags: ['Tag', false, true, false],
  100. customFields: ['JSON', true, false, false],
  101. },
  102. ProductTranslation: {
  103. id: ['ID', false, false, false],
  104. createdAt: ['DateTime', false, false, false],
  105. updatedAt: ['DateTime', false, false, false],
  106. languageCode: ['LanguageCode', false, false, false],
  107. name: ['String', false, false, false],
  108. slug: ['String', false, false, false],
  109. description: ['String', false, false, false],
  110. customFields: ['ProductTranslationCustomFields', true, false, false],
  111. },
  112. ProductList: {
  113. items: ['Product', false, true, false],
  114. totalItems: ['Int', false, false, false],
  115. },
  116. ProductVariantTranslation: {
  117. id: ['ID', false, false, false],
  118. createdAt: ['DateTime', false, false, false],
  119. updatedAt: ['DateTime', false, false, false],
  120. languageCode: ['LanguageCode', false, false, false],
  121. name: ['String', false, false, false],
  122. },
  123. Order: {
  124. id: ['ID', false, false, false],
  125. lines: ['OrderLine', false, true, false],
  126. },
  127. OrderLine: {
  128. id: ['ID', false, false, false],
  129. quantity: ['Int', false, false, false],
  130. },
  131. },
  132. inputs: {
  133. UpdateProductInput: {
  134. id: ['ID', false, false, false],
  135. name: ['String', false, false, false],
  136. },
  137. AdjustDraftOrderLineInput: {
  138. orderLineId: ['ID', false, false, false],
  139. quantity: ['Int', false, false, false],
  140. },
  141. },
  142. scalars: [
  143. 'ID',
  144. 'String',
  145. 'Int',
  146. 'Boolean',
  147. 'Float',
  148. 'JSON',
  149. 'DateTime',
  150. 'Upload',
  151. 'CurrencyCode',
  152. ],
  153. enums: {},
  154. },
  155. };
  156. }