smoke-matrix.json 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447
  1. {
  2. "schemaVersion": 1,
  3. "description": "Migration smoke coverage matrix for preserving the v3 feature experience while moving shared logic into the TypeScript core browser renderer engine.",
  4. "coverage": {
  5. "requireAllRendererIds": true,
  6. "requireAllRendererPackages": true,
  7. "requiredFormatFamilies": [
  8. "pdf",
  9. "docx",
  10. "xlsx",
  11. "pptx",
  12. "ofd",
  13. "cad",
  14. "dwf",
  15. "dwfx",
  16. "epub",
  17. "archive",
  18. "email",
  19. "markdown",
  20. "code",
  21. "image",
  22. "audio",
  23. "video",
  24. "geo",
  25. "mindmap",
  26. "data-asset"
  27. ]
  28. },
  29. "surfaces": [
  30. "main-demo",
  31. "compare-page",
  32. "script-tag",
  33. "vue3",
  34. "vue2.7",
  35. "vue2.6",
  36. "react",
  37. "react-legacy",
  38. "web",
  39. "jquery",
  40. "svelte"
  41. ],
  42. "wrappers": [
  43. {
  44. "id": "vue3",
  45. "packageName": "@file-viewer/vue3",
  46. "surface": "vue3"
  47. },
  48. {
  49. "id": "vue2.7",
  50. "packageName": "@file-viewer/vue2.7",
  51. "surface": "vue2.7"
  52. },
  53. {
  54. "id": "vue2.6",
  55. "packageName": "@file-viewer/vue2.6",
  56. "surface": "vue2.6"
  57. },
  58. {
  59. "id": "react",
  60. "packageName": "@file-viewer/react",
  61. "surface": "react"
  62. },
  63. {
  64. "id": "react-legacy",
  65. "packageName": "@file-viewer/react-legacy",
  66. "surface": "react-legacy"
  67. },
  68. {
  69. "id": "web",
  70. "packageName": "@file-viewer/web",
  71. "surface": "script-tag"
  72. },
  73. {
  74. "id": "jquery",
  75. "packageName": "@file-viewer/jquery",
  76. "surface": "jquery"
  77. },
  78. {
  79. "id": "svelte",
  80. "packageName": "@file-viewer/svelte",
  81. "surface": "svelte"
  82. }
  83. ],
  84. "wrapperCoverage": {
  85. "requireEveryWrapper": true,
  86. "requiredFamilies": [
  87. {
  88. "family": "pdf",
  89. "rendererId": "pdf",
  90. "extension": "pdf",
  91. "sample": "pdf.pdf",
  92. "assertions": ["load-complete", "page-navigation", "search"]
  93. },
  94. {
  95. "family": "docx",
  96. "rendererId": "office-word-openxml",
  97. "extension": "docx",
  98. "sample": "word.docx",
  99. "assertions": ["load-complete", "paper-layout", "search"]
  100. },
  101. {
  102. "family": "xlsx",
  103. "rendererId": "spreadsheet-openxml",
  104. "extension": "xlsx",
  105. "sample": "excel.xlsx",
  106. "assertions": ["load-complete", "sheet-tabs", "search"]
  107. },
  108. {
  109. "family": "image",
  110. "rendererId": "image",
  111. "extension": "png",
  112. "sample": "pic.png",
  113. "assertions": ["load-complete", "fit-to-view", "zoom"]
  114. },
  115. {
  116. "family": "markdown",
  117. "rendererId": "markdown",
  118. "extension": "md",
  119. "sample": "markdown.md",
  120. "assertions": ["load-complete", "dark-mode-readable", "search"]
  121. },
  122. {
  123. "family": "cad",
  124. "rendererId": "cad",
  125. "extension": "dwg",
  126. "sample": "sample.dwg",
  127. "assertions": ["load-complete", "fit-to-view", "zoom"]
  128. },
  129. {
  130. "family": "archive",
  131. "rendererId": "archive",
  132. "extension": "zip",
  133. "sample": "archive.zip",
  134. "assertions": ["load-complete", "entry-tree", "nested-preview"]
  135. },
  136. {
  137. "family": "email",
  138. "rendererId": "email",
  139. "extension": "msg",
  140. "sample": "sample.msg",
  141. "assertions": ["load-complete", "headers", "attachments"]
  142. },
  143. {
  144. "family": "geo",
  145. "rendererId": "geo",
  146. "extension": "geojson",
  147. "sample": "map.geojson",
  148. "assertions": ["load-complete", "map-fit", "zoom"]
  149. }
  150. ]
  151. },
  152. "cases": [
  153. {
  154. "id": "word-openxml-docx",
  155. "family": "docx",
  156. "rendererId": "office-word-openxml",
  157. "extension": "docx",
  158. "sample": "word.docx",
  159. "surfaces": ["main-demo", "script-tag"],
  160. "assertions": ["load-complete", "paper-layout", "search", "zoom", "print-capability", "export-html"]
  161. },
  162. {
  163. "id": "word-binary-doc",
  164. "family": "doc",
  165. "rendererId": "office-word-binary",
  166. "extension": "doc",
  167. "sample": "test.doc",
  168. "surfaces": ["main-demo"],
  169. "assertions": ["load-complete", "fallback-content", "download"]
  170. },
  171. {
  172. "id": "presentation-pptx",
  173. "family": "pptx",
  174. "rendererId": "office-presentation",
  175. "extension": "pptx",
  176. "sample": "ppt.pptx",
  177. "surfaces": ["main-demo"],
  178. "assertions": ["load-complete", "slide-count", "print-capability", "zoom"]
  179. },
  180. {
  181. "id": "open-document-odt",
  182. "family": "open-document",
  183. "rendererId": "open-document",
  184. "extension": "odt",
  185. "sample": "document.odt",
  186. "surfaces": ["main-demo"],
  187. "assertions": ["load-complete", "document-flow", "export-html"]
  188. },
  189. {
  190. "id": "spreadsheet-xlsx",
  191. "family": "xlsx",
  192. "rendererId": "spreadsheet-openxml",
  193. "extension": "xlsx",
  194. "sample": "excel.xlsx",
  195. "surfaces": ["main-demo"],
  196. "assertions": ["load-complete", "sheet-tabs", "search", "zoom"]
  197. },
  198. {
  199. "id": "pdf-document",
  200. "family": "pdf",
  201. "rendererId": "pdf",
  202. "extension": "pdf",
  203. "sample": "pdf.pdf",
  204. "surfaces": ["main-demo", "compare-page", "script-tag"],
  205. "assertions": ["load-complete", "page-navigation", "outline-or-thumbnails", "search", "zoom", "print-capability"]
  206. },
  207. {
  208. "id": "ofd-document",
  209. "family": "ofd",
  210. "rendererId": "ofd",
  211. "extension": "ofd",
  212. "sample": "ofd.ofd",
  213. "surfaces": ["main-demo"],
  214. "assertions": ["load-complete", "page-layout", "zoom", "print-capability"]
  215. },
  216. {
  217. "id": "typst-rendered-document",
  218. "family": "typst",
  219. "rendererId": "typst",
  220. "extension": "typ",
  221. "sample": "report.typ",
  222. "surfaces": ["main-demo"],
  223. "assertions": ["load-complete", "rendered-svg", "page-layout", "print-capability", "export-html"]
  224. },
  225. {
  226. "id": "archive-zip",
  227. "family": "archive",
  228. "rendererId": "archive",
  229. "extension": "zip",
  230. "sample": "archive.zip",
  231. "surfaces": ["main-demo"],
  232. "assertions": ["load-complete", "entry-tree", "nested-preview", "loading-state"]
  233. },
  234. {
  235. "id": "email-msg",
  236. "family": "email",
  237. "rendererId": "email",
  238. "extension": "msg",
  239. "sample": "sample.msg",
  240. "surfaces": ["main-demo"],
  241. "assertions": ["load-complete", "headers", "attachments", "export-html"]
  242. },
  243. {
  244. "id": "eda-olb",
  245. "family": "eda",
  246. "rendererId": "eda",
  247. "extension": "olb",
  248. "sample": "sample.olb",
  249. "surfaces": ["main-demo"],
  250. "assertions": ["load-complete", "structure-tree", "scrollable-tree"]
  251. },
  252. {
  253. "id": "eda-gds-layout",
  254. "family": "eda-layout",
  255. "rendererId": "eda",
  256. "extension": "gds",
  257. "sample": "layout.gds",
  258. "surfaces": ["main-demo"],
  259. "assertions": ["load-complete", "structure-tree", "binary-preview"]
  260. },
  261. {
  262. "id": "cad-dwg",
  263. "family": "cad",
  264. "rendererId": "cad",
  265. "extension": "dwg",
  266. "sample": "sample.dwg",
  267. "surfaces": ["main-demo"],
  268. "assertions": ["load-complete", "fit-to-view", "pan", "zoom"]
  269. },
  270. {
  271. "id": "cad-dwf",
  272. "family": "dwf",
  273. "rendererId": "cad",
  274. "extension": "dwf",
  275. "sample": "samples/apache/blocks_and_tables.dwf",
  276. "surfaces": ["main-demo"],
  277. "assertions": ["load-complete", "fit-to-view", "zoom"]
  278. },
  279. {
  280. "id": "cad-dwfx",
  281. "family": "dwfx",
  282. "rendererId": "cad",
  283. "extension": "dwfx",
  284. "sample": "samples/autodesk/house.dwfx",
  285. "surfaces": ["main-demo"],
  286. "assertions": ["load-complete", "fit-to-view", "zoom"]
  287. },
  288. {
  289. "id": "model-gltf",
  290. "family": "model",
  291. "rendererId": "model",
  292. "extension": "gltf",
  293. "sample": "model.gltf",
  294. "surfaces": ["main-demo"],
  295. "assertions": ["load-complete", "camera-controls", "zoom"]
  296. },
  297. {
  298. "id": "geo-geojson",
  299. "family": "geo",
  300. "rendererId": "geo",
  301. "extension": "geojson",
  302. "sample": "map.geojson",
  303. "surfaces": ["main-demo"],
  304. "assertions": ["load-complete", "map-fit", "zoom"]
  305. },
  306. {
  307. "id": "drawing-excalidraw",
  308. "family": "drawing",
  309. "rendererId": "drawing",
  310. "extension": "excalidraw",
  311. "sample": "flow.excalidraw",
  312. "surfaces": ["main-demo"],
  313. "assertions": ["load-complete", "svg-output", "zoom"]
  314. },
  315. {
  316. "id": "mindmap-xmind",
  317. "family": "mindmap",
  318. "rendererId": "mindmap",
  319. "extension": "xmind",
  320. "sample": "mindmap.xmind",
  321. "surfaces": ["main-demo"],
  322. "assertions": ["load-complete", "sheet-tabs", "outline", "pan", "zoom", "search"]
  323. },
  324. {
  325. "id": "ebook-epub",
  326. "family": "epub",
  327. "rendererId": "epub",
  328. "extension": "epub",
  329. "sample": "book.epub",
  330. "surfaces": ["main-demo"],
  331. "assertions": ["load-complete", "toc", "chapter-content", "search"]
  332. },
  333. {
  334. "id": "ebook-umd",
  335. "family": "umd",
  336. "rendererId": "umd",
  337. "extension": "umd",
  338. "sample": "book.umd",
  339. "surfaces": ["main-demo"],
  340. "assertions": ["load-complete", "toc", "chapter-content"]
  341. },
  342. {
  343. "id": "image-png",
  344. "family": "image",
  345. "rendererId": "image",
  346. "extension": "png",
  347. "sample": "pic.png",
  348. "surfaces": ["main-demo"],
  349. "assertions": ["load-complete", "fit-to-view", "zoom", "print-capability"]
  350. },
  351. {
  352. "id": "markdown-md",
  353. "family": "markdown",
  354. "rendererId": "markdown",
  355. "extension": "md",
  356. "sample": "markdown.md",
  357. "surfaces": ["main-demo"],
  358. "assertions": ["load-complete", "dark-mode-readable", "search", "print-capability"]
  359. },
  360. {
  361. "id": "code-typescript",
  362. "family": "code",
  363. "rendererId": "code",
  364. "extension": "ts",
  365. "sample": "code.ts",
  366. "surfaces": ["main-demo"],
  367. "assertions": ["load-complete", "syntax-highlight", "search", "long-content-scroll"]
  368. },
  369. {
  370. "id": "video-mp4",
  371. "family": "video",
  372. "rendererId": "video",
  373. "extension": "mp4",
  374. "sample": "video.mp4",
  375. "surfaces": ["main-demo"],
  376. "assertions": ["load-complete", "media-controls"]
  377. },
  378. {
  379. "id": "audio-mp3",
  380. "family": "audio",
  381. "rendererId": "audio",
  382. "extension": "mp3",
  383. "sample": "audio.mp3",
  384. "surfaces": ["main-demo"],
  385. "assertions": ["load-complete", "media-controls"]
  386. },
  387. {
  388. "id": "data-sqlite",
  389. "family": "data-asset",
  390. "rendererId": "data-asset",
  391. "extension": "sqlite",
  392. "sample": "sample.sqlite",
  393. "surfaces": ["main-demo"],
  394. "assertions": ["load-complete", "metadata", "export-html"]
  395. }
  396. ],
  397. "wrapperCases": [
  398. {
  399. "id": "vue3-pdf",
  400. "wrapperId": "vue3",
  401. "sample": "pdf.pdf",
  402. "surface": "vue3"
  403. },
  404. {
  405. "id": "vue27-pdf",
  406. "wrapperId": "vue2.7",
  407. "sample": "pdf.pdf",
  408. "surface": "vue2.7"
  409. },
  410. {
  411. "id": "vue26-pdf",
  412. "wrapperId": "vue2.6",
  413. "sample": "pdf.pdf",
  414. "surface": "vue2.6"
  415. },
  416. {
  417. "id": "react-pdf",
  418. "wrapperId": "react",
  419. "sample": "pdf.pdf",
  420. "surface": "react"
  421. },
  422. {
  423. "id": "react-legacy-pdf",
  424. "wrapperId": "react-legacy",
  425. "sample": "pdf.pdf",
  426. "surface": "react-legacy"
  427. },
  428. {
  429. "id": "web-script-pdf",
  430. "wrapperId": "web",
  431. "sample": "pdf.pdf",
  432. "surface": "script-tag"
  433. },
  434. {
  435. "id": "jquery-pdf",
  436. "wrapperId": "jquery",
  437. "sample": "pdf.pdf",
  438. "surface": "jquery"
  439. },
  440. {
  441. "id": "svelte-pdf",
  442. "wrapperId": "svelte",
  443. "sample": "pdf.pdf",
  444. "surface": "svelte"
  445. }
  446. ]
  447. }