8
0

integration.js 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. /**
  2. * @license Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
  4. */
  5. import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard';
  6. import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph';
  7. import ShiftEnter from '@ckeditor/ckeditor5-enter/src/shiftenter';
  8. import Heading from '@ckeditor/ckeditor5-heading/src/heading';
  9. import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold';
  10. import Underline from '@ckeditor/ckeditor5-basic-styles/src/underline';
  11. import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic';
  12. import Link from '@ckeditor/ckeditor5-link/src/link';
  13. import Strikethrough from '@ckeditor/ckeditor5-basic-styles/src/strikethrough';
  14. import List from '@ckeditor/ckeditor5-list/src/list';
  15. import Image from '@ckeditor/ckeditor5-image/src/image';
  16. import Table from '@ckeditor/ckeditor5-table/src/table';
  17. import env from '@ckeditor/ckeditor5-utils/src/env';
  18. import PasteFromOffice from '../../src/pastefromoffice';
  19. import { generateTests } from '../_utils/utils';
  20. const browsers = [ 'chrome', 'firefox', 'safari', 'edge' ];
  21. describe( 'PasteFromOffice - integration', () => {
  22. generateTests( {
  23. input: 'basic-styles',
  24. type: 'integration',
  25. browsers,
  26. editorConfig: {
  27. plugins: [ Clipboard, Paragraph, Heading, Bold, Italic, Underline, Strikethrough, PasteFromOffice ]
  28. },
  29. skip: {
  30. safari: [ 'italicStartingText', 'multipleStylesSingleLine', 'multipleStylesMultiline' ] // Skip due to spacing issue (#13).
  31. }
  32. } );
  33. generateTests( {
  34. input: 'image',
  35. type: 'integration',
  36. browsers,
  37. editorConfig: {
  38. plugins: [ Clipboard, Paragraph, Image, Table, PasteFromOffice ]
  39. },
  40. skip: {
  41. chrome: ( env.isEdge ? [ 'adjacentGroups' ] : [] ),
  42. firefox: ( env.isEdge ? [ 'adjacentGroups' ] : [] ),
  43. safari: ( env.isEdge ? [ 'adjacentGroups' ] : [] ),
  44. edge: ( env.isEdge ? [] : [ 'adjacentGroups' ] )
  45. }
  46. } );
  47. generateTests( {
  48. input: 'link',
  49. type: 'integration',
  50. browsers,
  51. editorConfig: {
  52. plugins: [ Clipboard, Paragraph, Heading, Bold, Link, ShiftEnter, PasteFromOffice ]
  53. },
  54. skip: {
  55. safari: [ 'combined' ] // Skip due to spacing issue (#13).
  56. }
  57. } );
  58. generateTests( {
  59. input: 'list',
  60. type: 'integration',
  61. browsers,
  62. editorConfig: {
  63. plugins: [ Clipboard, Paragraph, Heading, Bold, Italic, Underline, Link, List, PasteFromOffice ]
  64. },
  65. skip: {
  66. safari: [ 'heading3Styled' ] // Skip due to spacing issue (#13).
  67. }
  68. } );
  69. generateTests( {
  70. input: 'spacing',
  71. type: 'integration',
  72. browsers,
  73. editorConfig: {
  74. plugins: [ Clipboard, Paragraph, Bold, Italic, Underline, PasteFromOffice ]
  75. }
  76. } );
  77. generateTests( {
  78. input: 'google-docs-bold-wrapper',
  79. type: 'integration',
  80. browsers,
  81. editorConfig: {
  82. plugins: [ Clipboard, Paragraph, Bold, PasteFromOffice ]
  83. }
  84. } );
  85. } );