Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
test('ReactSerializer.fromExtensionManager', () => {
expect(serializer).toBeInstanceOf(ReactSerializer);
expect(serializer.nodes.paragraph).toBeFunction();
expect(serializer.marks.bold).toBeFunction();
// fills in for a missing text
const altExtensions = [
{ extension: new DocExtension(), priority: 2 },
{ extension: new ParagraphExtension(), priority: 2 },
{ extension: new TextExtension(), priority: 2 },
{ extension: new BoldExtension(), priority: 2 },
{ extension: new CodeBlockExtension(), priority: 2 },
];
const altManager = ExtensionManager.create(altExtensions);
expect(ReactSerializer.fromExtensionManager(altManager).nodes.text).toBeFunction();
});
{ extension: new BoldExtension(), priority: 3 },
{ extension: new ItalicExtension(), priority: 3 },
{ extension: new UnderlineExtension(), priority: 3 },
{ extension: new BlockquoteExtension(), priority: 3 },
];
/**
* Useful for testing
*/
export const ExtensionMap = {
nodes: {
blockquote: new BlockquoteExtension(),
heading: new HeadingExtension(),
},
marks: {
bold: new BoldExtension(),
italic: new ItalicExtension(),
underline: new UnderlineExtension(),
},
};
/**
* @deprecated Causes issues when multiple tests use this. Prefer {@link createTestManager}
*/
export const manager = ExtensionManager.create(extensions).init(helpers);
export const createBaseTestManager = (
extra: GFlexibleList = [] as any,
) => ExtensionManager.create([...baseExtensions, ...extra]);
export const createTestManager = (
extra: GFlexibleList = [] as any,
getState: Cast(jest.fn()),
portalContainer: new PortalContainer(),
getTheme: () => defaultRemirrorThemeValue,
};
export const baseExtensions = [
{ extension: new DocExtension(), priority: 2 },
{ extension: new TextExtension(), priority: 2 },
{ extension: new ParagraphExtension(), priority: 2 },
];
export const extensions = [
...baseExtensions,
{ extension: new HistoryExtension(), priority: 2 },
{ extension: new PlaceholderExtension(), priority: 2 },
{ extension: new BoldExtension(), priority: 3 },
{ extension: new ItalicExtension(), priority: 3 },
{ extension: new UnderlineExtension(), priority: 3 },
{ extension: new BlockquoteExtension(), priority: 3 },
];
/**
* Useful for testing
*/
export const ExtensionMap = {
nodes: {
blockquote: new BlockquoteExtension(),
heading: new HeadingExtension(),
},
marks: {
bold: new BoldExtension(),
italic: new ItalicExtension(),