Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gallery Block Refactor: Features and functionality to test during CFT #29882

Closed
43 tasks
glendaviesnz opened this issue Mar 16, 2021 · 5 comments
Closed
43 tasks
Labels
[Block] Gallery Affects the Gallery Block - used to display groups of images

Comments

@glendaviesnz
Copy link
Contributor

glendaviesnz commented Mar 16, 2021

A lot has changed with the gallery during its refactoring to use nested images blocks. It would be good to ensure we get a sufficiently broad range of features and functionality tested during the community call for testing.

This issue is meant to be a living checklist of things that require testing.

Gallery Creation

  • Add a gallery via block inserters
  • Add gallery via drag and drop of varying number of images (inc. invalid files) into the editor
    • Single image
    • Multiple images
    • With invalid files.
    • Positioning of image insertions
  • Copy an existing gallery block

Gallery Deletion

  • Remove a gallery via block controls or delete keyboard shortcut
  • Undo addition of gallery block

Image Ordering

  • Reorder images within gallery
    • Using block controls
    • Via drag and drop of image blocks

Adding Images

  • Insert images via placeholder upload
  • Insert images via media library
  • Insert images via inserter
  • Insert images via drag & drop between images
    • Single image
    • Multiple images
    • With invalid files.
    • Positioning of image insertions
  • Insert images via drag & drop onto the placeholder dropzone
    • Single image
    • Multiple images
    • With invalid files.
    • Positioning of image insertions

Updating/Removing Images

  • Replace image using the replace option in the image block menu
  • Remove an image from the gallery
  • Change image block style selections
  • Apply gallery settings to all child images
    • Set link destination and target
    • Set image size
  • Test applied image link destinations work
  • Confirm thumbnails and sizes render correctly
  • Ensure new gallery images pick up the gallery’s currently selected options
  • Check image customisations introduced outside of Gutenberg still work e.g. Duotone

Transforming Gallery

  • Test migrating new and old galleries to and from Jetpack tiled and slideshow galleries, and to and from core image blocks
  • Test transforming a gallery shortcode to the new gallery block

Gallery Rendering

  • Ensure gallery renders and functions on the frontend
  • Ensure that an existing gallery that has not been migrated still displays correctly on the front end
  • Test frontend rendering in default themes
  • Ensure rendering is correct within Reader

Compatibility

  • Test all the above with different plugins and themes active
  • Test gallery within the editor and frontend across all supported browsers
@glendaviesnz glendaviesnz added the [Block] Gallery Affects the Gallery Block - used to display groups of images label Mar 16, 2021
@paaljoachim
Copy link
Contributor

Using WP 5.7.
The special Gutenberg plugin that contains the new Gallery PR.
Twenty Twenty One.

Chrome
A local test site.

Gallery Creation

1- Added the new gallery with the Add block and the inpage inserter. Worked.
2- Initially I dragged and dropped without first adding the Gallery block. That did not work. I then added the Gallery block dropping 4 images onto the placeholder. Works fine. I removed all the images inside the Gallery block, so no images remained. I then encountered an error.
Screen Shot 2021-03-24 at 16 54 25

2A- Drag and drop of single image.
Worked.
2B- Drag and drop of multiple images.
Worked.
2C- Drag and drop of multiple images + invalid files.
Valid images were uploaded others were not.
2D- Positioning of image insertions.
---> Not sure what this means.... Not able to test at the moment.

3- Copy an existing gallery block
Deactivated the special Gutenberg plugin. Went to a page to create a gallery block.
I also added a caption during the add/edit gallery. The caption showed in the Gutenberg layout screen. It did not do so for the updated Gallery block. Copied the old gallery block. Activated the special Gutenberg plugin. Went to a page. Pasted in the old gallery block. It showed the old gallery block. I expected an option under the 3 dots drop down menu to convert the old gallery block to become a new gallery block. Btw captions are seen. I also added another this time new gallery block and the captions are also seen here. It seems that on the first run through with creating a new gallery block on a new page that captions will not show up. Upon publishing they seem to show up. This is a bit tricky. Sometimes they show up and sometimes not.

Gallery Deletion

1- Remove a gallery via block controls or delete keyboard shortcut
I can remove the gallery via the 3 dots drop down menu.
Hmm now clicking the parent icon works.... it did not earlier. Maybe some caching thing going on...
I am able to select parent icon and see the blue border around the Gallery block and then press delete or backspace key.

2- Undo addition of gallery block
NB. Not able to undo addition of gallery block..
--> Undo icon becomes unresponsive.

Image Ordering

Reorder images within gallery
Using block controls
Via drag and drop of image blocks
--> Both worked.

Adding Images

1- Insert images via placeholder upload
--> Worked.

2- Insert images via media library
--> Worked

3- Insert images via inserter
Not sure about this one...

4- Insert images via drag & drop between images
--> Worked. From an Image block on the page and externally drag and drop.

5- Single image
--> Worked.

6- Multiple images
--> Worked.

7- With invalid files.
---> Drag and drop from external desktop. 2 jpg images and a mp4. No files were added.
I have earlier been able to add only allowed images, but this time no images were added.

8- Positioning of image insertions
This might mean alignment....
Aligned left.
---> Looked fine backend and frontend.
Aligned center.
---> Looked fine backend and frontend.
Aligned right.
---> Looked fine backend and frontend.
Aligned wide.
---> Looked fine backend and frontend.
Aligned full width.
---> Looked fine backend and frontend.

Linking
Linked one image to another post.
Linked one image to the attachment page.
Linked one image to the media file.
--> Worked fine

Updating/Removing Images
1- Replace image by dropping replacement on original
I tried dropping an image from the desktop and onto of an image in the Gallery block.
Result is that the newly dropped image was added to the Gallery Block.

2- Remove an image from the gallery
Removed with selecting block and pressing del or backspace on the keyboard.
I also tested using the 3 dot drop down menu to remove block.
--> Both worked fine.

3- Change image block style selections
Changed to rounded, borders and frame on various images inside the Gallery Block.
--> Worked fine.

4- Apply gallery settings to all child images
Added link to media file for all child images. -> Worked.
Added image size Full Size. --> Looked like it work on the frontend. All images looked sharper. Backend all images reflected that Full Size was in use.

5- Set link destination and target
Added open in new tab to one image, and not the rest.
Worked fine.

6- Set image size
---> Worked.

7- Test applied image link destinations work
---> Worked.

8- Confirm thumbnails and sizes render correctly
---> Hard to say as the image stay the same size in the backend and frontend. Selecting thumbnail for some images just showed a blurred image.

9- Ensure new gallery images pick up the gallery’s currently selected options
---> Worked from upload and media library.

10- Check image customisations introduced outside of Gutenberg still work e.g. Duotone
---> Not checked.

Migrating Old Gallery Versions

1- Load a post with an old gallery created prior to the gallery refactoring
---> Worked.

2- Test migrating old galleries by pasting old content into the code editor, confirming visual results and console log
---> Worked. Uses the old Gallery settings when selecting Image block.

3- Test transforming a gallery shortcode to the new gallery block
Ahh. I clicked the Block transform and transformed it into the new Gallery block.
I selected a new Image block inside the converted to new Gallery block. Then clicked the "Change block or style" and expected to be able to convert one image block inside the gallery to a single image block

Gallery Rendering

1- Ensure gallery renders and functions on the frontend
---> Works.

2- Ensure that an existing gallery that has not been migrated still displays correctly on the front end
---> I believe it did. I tried undoing back to before I had converted to new but that did not work.

3- Test frontend rendering in default themes
---> Works.

4- Ensure rendering is correct within Reader
---> Not tested. Not sure how to test it.

Compatibility

1- Test all the above with different plugins and themes active
Needs more testing here....

2- Test gallery within the editor and frontend across all supported browsers
Tested a bit with Safari. That seemed to work alright. Used Twenty Twenty One.

@glendaviesnz
Copy link
Contributor Author

glendaviesnz commented Mar 30, 2021

Thanks for all the testing @paaljoachim

dropping 4 images onto the placeholder. Works fine. I removed all the images inside the Gallery block, so no images remained. I then encountered an error.

@paaljoachim, I wasn't able to replicate this - are you able to provide a screen capture of the full add and delete process, and a copy of any error messages that show in browser console when the error occurs please?

I expected an option under the 3 dots drop down menu to convert the old gallery block to become a new gallery block.

To convert an old gallery block to a new one you need to use the Transform menu and select the option to transform to 'Gallery' - it would be nice if we could make this 'New Gallery', but the block transform framework doesn't allow us to specify a custom name here unfortunately:

Screen Shot 2021-03-31 at 1 36 53 PM

Then clicked the "Change block or style" and expected to be able to convert one image block inside the gallery to a single image block

Currently you need to drag an image out of the gallery in order to transform it to a single block. I don't think there is currently a way to handle this from the transforms menu, but you could add an issue for this if you think it would be a useful future enhancement.

NB. Not able to undo addition of gallery block..

There is an issue at #30001 for undo issues, feel free to update this if you don't think it covers your use case.

with creating a new gallery block on a new page that captions will not show up

Thanks for adding #30196 for this - I have dragged it into the project board

@paaljoachim
Copy link
Contributor

paaljoachim commented Apr 1, 2021

Using WordPress 5.7
Special Gutenberg plugin. (Only plugin activated)
Twenty Twenty One.

Retesting this aspect:
Initially I dragged and dropped without first adding the Gallery block. That did not work. I then added the Gallery block dropping 4 images onto the placeholder. Works fine. I removed all the images inside the Gallery block, so no images remained. I then encountered an error.

I dragged and dropped 4 images onto the placeholder at first it looked like I missed with the images as the first image is seen in the browser, so I had to use the browser back arrow to get back to the Gallery placeholder. Then I added the images again and made sure that I was inside the placeholder when I dropped the images. Selecting the first image and press the backspace/delete key produced the error.

Delete-image-error.mp4

Console errors seen:

Error: An error occurred while running 'mapSelect': Cannot read property 'title' of undefined
The error may be correlated with this previous error:
TypeError: Cannot read property 'title' of undefined
at Object.current (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/block-editor/index.js?ver=006891fe0be571253e193a76ec9f4393:54:11076)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:30558
at s (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:24851)
at Object.__experimentalMarkListeningStores (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:25230)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:29858
at e (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:30535)
at t (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:30713)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:21813
at p (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:11910)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/redux-routine/index.js?ver=eb5a8ad406b2ad6121c95ea9478df0b2:1:9762

Original stack trace:
at Me (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:30261)
at Xd (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/block-editor/index.js?ver=006891fe0be571253e193a76ec9f4393:54:10789)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/block-library/index.js?ver=662424d4810dcb7c4d6a4ed9f8ea22a7:5:4952
at we (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:84:293)
at He (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:97:464)
at zj (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:228:406)
at Th (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:152:223)
at tj (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:152:152)
at Te (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:146:151)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:61:68
Me @ react-dom.min.de439aae.js:125
index.js?ver=23bba914a58496b71e4e87dab570c238:1 An error occurred while running 'mapSelect': Cannot read property 'title' of undefined
Me @ index.js?ver=23bba914a58496b71e4e87dab570c238:1
react-dom.min.de439aae.js:125 TypeError: Cannot read property 'mode' of undefined
at Xd (index.js?ver=006891fe0be571253e193a76ec9f4393:54)
at eb (index.js?ver=006891fe0be571253e193a76ec9f4393:54)
at we (react-dom.min.de439aae.js:84)
at zj (react-dom.min.de439aae.js:226)
at Th (react-dom.min.de439aae.js:152)
at tj (react-dom.min.de439aae.js:152)
at Te (react-dom.min.de439aae.js:146)
at react-dom.min.de439aae.js:61
at unstable_runWithPriority (react.min.e713ea3b.js:25)
at Da (react-dom.min.de439aae.js:60)
Me @ react-dom.min.de439aae.js:125
react-dom.min.de439aae.js:125 Error: An error occurred while running 'mapSelect': Cannot read property 'title' of undefined
The error may be correlated with this previous error:
TypeError: Cannot read property 'title' of undefined
at Object.current (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/block-editor/index.js?ver=006891fe0be571253e193a76ec9f4393:54:11076)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:30558
at s (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:24851)
at Object.__experimentalMarkListeningStores (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:25230)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:29858
at e (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:30535)
at t (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:30713)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:21813
at p (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:11910)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/redux-routine/index.js?ver=eb5a8ad406b2ad6121c95ea9478df0b2:1:9762

Original stack trace:
at Me (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/data/index.js?ver=23bba914a58496b71e4e87dab570c238:1:30261)
at Xd (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/block-editor/index.js?ver=006891fe0be571253e193a76ec9f4393:54:10789)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/build/block-library/index.js?ver=662424d4810dcb7c4d6a4ed9f8ea22a7:5:4952
at we (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:84:293)
at He (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:97:464)
at zj (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:228:406)
at Th (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:152:223)
at tj (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:152:152)
at Te (https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:146:151)
at https://2121.dev.cc/wp-content/plugins/gutenberg-gallery-refactor-1-1/vendor/react-dom.min.de439aae.js:61:68
Me @ react-dom.min.de439aae.js:125
index.js?ver=23bba914a58496b71e4e87dab570c238:1 An error occurred while running 'mapSelect': Cannot read property 'title' of undefined
Me @ index.js?ver=23bba914a58496b71e4e87dab570c238:1
react-dom.min.de439aae.js:125 TypeError: Cannot read property 'mode' of undefined
at Xd (index.js?ver=006891fe0be571253e193a76ec9f4393:54)
at eb (index.js?ver=006891fe0be571253e193a76ec9f4393:54)
at we (react-dom.min.de439aae.js:84)
at zj (react-dom.min.de439aae.js:226)
at Th (react-dom.min.de439aae.js:152)
at tj (react-dom.min.de439aae.js:152)
at Te (react-dom.min.de439aae.js:146)
at react-dom.min.de439aae.js:61
at unstable_runWithPriority (react.min.e713ea3b.js:25)
at Da (react-dom.min.de439aae.js:60)
Me @ react-dom.min.de439aae.js:125

Delete-image-error-seen-in-console.mp4

@mkevins
Copy link
Contributor

mkevins commented Sep 21, 2021

It would be good to ensure we get a sufficiently broad range of features and functionality tested during the community call for testing.

This issue is meant to be a living checklist of things that require testing.

This is a great list @glendaviesnz ! Many of these are relevant to mobile as well, so I'll make a mobile checklist as well (deleting things that aren't relevant, e.g. drag and drop), and adding a few things for the remote flag.

Mobile Testing Checklist

This issue is meant to be a living checklist of things that require testing.

The Gallery New Format Feature Flag

  • Test the setting for self-hosted sites
    • Test that the new format is used when the remote setting is on
    • Test that the old format is used when the remote setting is off
  • Test the setting for .com sites
    • Test that the new format is used when the remote setting is on
    • Test that the old format is used when the remote setting is off
  • Test the setting for Jetpack connected sites
    • Test that the new format is used when the remote setting is on
    • Test that the old format is used when the remote setting is off
  • Test the setting in offline mode
    • Test that the setting remains on while in airplane mode when previously confirmed on
    • Test that the setting remains off while in airplane mode when previously confirmed off

Gallery Creation

  • Add a gallery via block inserters
  • Copy an existing gallery block

Gallery Deletion

  • Remove a gallery via block controls
  • Undo addition of gallery block

Image Ordering

  • Reorder images within gallery
    • Using block controls

Adding Images

  • Insert images via placeholder upload
  • Insert images via media library
  • Insert images via inserter

Updating/Removing Images

  • Replace image using the replace option in the image block menu
  • Remove an image from the gallery
  • Change image block style selections
  • Apply gallery settings to all child images
    • Set link destination and target
    • Set image size
  • Test applied image link destinations work
  • Confirm thumbnails and sizes render correctly
  • Ensure new gallery images pick up the gallery’s currently selected options
  • Check image customizations introduced outside of Gutenberg still work e.g. Duotone

Gallery Rendering

  • Ensure gallery renders and functions on the frontend
  • Ensure that an existing gallery that has not been migrated still displays correctly on the front end
  • Test frontend rendering in default themes
  • Ensure rendering is correct within Reader

Compatibility

  • Test all the above with different plugins and themes active

@annezazu
Copy link
Contributor

annezazu commented Feb 7, 2022

I'm assuming this can be closed due to merging in 5.9. I'm going to close it out as a result but obviously feel free to re-open.

@annezazu annezazu closed this as completed Feb 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Block] Gallery Affects the Gallery Block - used to display groups of images
Projects
None yet
Development

No branches or pull requests

4 participants