UNPKG

@wordpress/block-library

Version:
49 lines (42 loc) 1.58 kB
/** * External dependencies */ import { getEditorHtml, initializeEditor, setupCoreBlocks, transformBlock, getBlockTransformOptions, } from 'test/helpers'; const block = 'Buttons'; const initialHtml = ` <!-- wp:buttons --> <div class="wp-block-buttons"><!-- wp:button --> <div class="wp-block-button"><a class="wp-block-button__link wp-element-button">Solid Button</a></div> <!-- /wp:button --> <!-- wp:button {"gradient":"luminous-vivid-amber-to-luminous-vivid-orange"} --> <div class="wp-block-button"><a class="wp-block-button__link has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background has-background wp-element-button">Gradient Button</a></div> <!-- /wp:button --></div> <!-- /wp:buttons -->`; const transformsWithInnerBlocks = [ 'Columns', 'Group' ]; const blockTransforms = [ ...transformsWithInnerBlocks ]; setupCoreBlocks(); describe( `${ block } block transforms`, () => { test.each( blockTransforms )( 'to %s block', async ( blockTransform ) => { const screen = await initializeEditor( { initialHtml } ); const newBlock = await transformBlock( screen, block, blockTransform, { hasInnerBlocks: transformsWithInnerBlocks.includes( blockTransform ), } ); expect( newBlock ).toBeVisible(); expect( getEditorHtml() ).toMatchSnapshot(); } ); it( 'matches expected transformation options', async () => { const screen = await initializeEditor( { initialHtml } ); const transformOptions = await getBlockTransformOptions( screen, block ); expect( transformOptions ).toHaveLength( blockTransforms.length ); } ); } );