woocommerce/plugins/woocommerce-blocks/docs/internal-developers/testing/releases/1170.md

500 lines
28 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Testing notes and ZIP for release 11.7.0
Zip file for testing: [woocommerce-gutenberg-products-block.zip](https://github.com/woocommerce/woocommerce-blocks/files/13549019/woocommerce-gutenberg-products-block.zip)
## Testing Notes
### [Store Customization] Update the "Footer with 3 Menus" pattern to remove the last 2 menus [#11980](https://github.com/woocommerce/woocommerce-blocks/pull/11980)
1. Create a new page or post.
2. Insert the "Footer with Menus".
3. Check it only has one menu.
| Before | After |
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| <img width="1407" alt="Screenshot 2023-11-29 at 11 23 27" src="https://github.com/woocommerce/woocommerce-blocks/assets/186112/a2408bf2-bf20-4c03-8388-8e51fbfc9fab"> | <img width="1407" alt="Screenshot 2023-11-29 at 11 23 21" src="https://github.com/woocommerce/woocommerce-blocks/assets/186112/50d4eb2e-a09e-463b-856d-b6ce5e7c4619"> |
### [Store Customization] Update the default content in patterns [#11997](https://github.com/woocommerce/woocommerce-blocks/pull/11997)
1. Insert [all the patterns](https://i.imgflip.com/87rb8e.jpg) from the next list:
- Intro patterns
- Featured category cover image
- Hero product split
- Just arrived full hero
- Featured selling patterns:
- Product Collection 4 Columns
- Product Collection 5 Columns
- Product Collection 3 Columns
- Product Collection: Featured Products 5 Columns
- Featured category triple
- Large image product gallery
- Product gallery
- Hero product 3-split
- Hero product chessboard
- Featured category focus
- Banner
- About patterns
- Alternating image and text
- Review patterns
- Testimonials 3 Columns
- Testimonials single
- Social media patterns
- Social: Follow us on social media
2. Check the copy is the same expected in the designs (see screenshots here: [#11875](https://github.com/woocommerce/woocommerce-blocks/issues/11875)).
### Update patterns design [#12005](https://github.com/woocommerce/woocommerce-blocks/pull/12005)
1. Create a new page or post.
2. Insert the "Just Arrived Full Hero" and check it matches the new design below FlPl7fHaGv9mpu8Nfl0joH-fi-158_32406 (the button colors may differ between themes because they are no hard-coded).
<img width="750" alt="Screenshot 2023-12-04 at 14 53 27" src="https://github.com/woocommerce/woocommerce-blocks/assets/186112/f919bb4a-850b-483d-be35-8ea12e161de9">
3. Insert the "Product Collection 3 Columns" and "Product Gallery" and check they don't have titles anymore.
4. Insert the "Hero Product Chessboard" and check the bottom-left square has the following copy:
```TXT
Quality Materials
We use only the highest-quality materials in our products, ensuring that they look great and last for years to come.
Unique Design
From bold prints and colors to intricate details and textures, our products are a perfect combination of style and function.
```
### Hook `woocommerce_single_product_summary` action to `core/post-excerpt` block [#11953](https://github.com/woocommerce/woocommerce-blocks/pull/11953)
1. Ensure that you are using a block theme.
2. Install [Code Snippets](https://wordpress.org/plugins/code-snippets/), that will allow us to insert some PHP code into our store.
3. Go to Snippets > Add New. Set the code snippet title to `Product summary` and add this PHP code:
```PHP
add_action('woocommerce_single_product_summary', function() {
echo 'woocommerce_single_product_summary';
});
```
4. In the frontend, go to a Single product page and ensure that the string `woocommerce_single_product_summary` is visible before the Product Summary.
| Before | After |
|-----------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------|
| ![image](https://github.com/woocommerce/woocommerce-blocks/assets/4463174/8489872a-7f4b-4bcd-8345-144672a793e3) | ![image](https://github.com/woocommerce/woocommerce-blocks/assets/4463174/328adbb7-19af-4b96-ab1e-395e40414738) |
### Remove isExperimental flag from product-query module which is not experimental [#10531](https://github.com/woocommerce/woocommerce-blocks/pull/10531)
1. Go to Editor
2. Insert Products (Beta) block in some template
3. Smoke test in Editor
4. Save and go to frontend - verify it works normal
5. Repeat the above in new post
### [Product Collection] Fix: HTML entity decoding for product names in Hand-Picked Products [#11927](https://github.com/woocommerce/woocommerce-blocks/pull/11927)
1. Add a hyphen `` to the name of any product, like **`Hoodie - Black`**.
2. Insert a Product Collection block into a new post.
3. Apply the “Hand-picked Products” filter in Inspector Controls.
4. Search for the product with the hyphen and confirm it displays correctly, as shown below:
![image](https://github.com/woocommerce/woocommerce-blocks/assets/16707866/ae7c96e0-99fa-495b-8b83-1d0d0fbf3fde)
5. Feel free to test other [HTML entities](https://developer.mozilla.org/en-US/docs/Glossary/Entity) too.
**Verifying Label Update**:
- Ensure the text reads “HAND-PICKED PRODUCTS” instead of “PICK SOME PRODUCTS”, as depicted in the image below:
![image](https://github.com/woocommerce/woocommerce-blocks/assets/16707866/66637971-647b-4fa7-a591-a211052fb61e)
### Fix: Product Collection show products with correct stock statuses [#11708](https://github.com/woocommerce/woocommerce-blocks/pull/11708)
1. Set some product to be out of stock.
2. Add Product Collection block to a page.
3. Set the stock status filter to all options except `outofstock`.
4. See the out of stock products **not show up** in the editor preview.
5. Save and see the same on the front end. Out of stock products don't show up.
### Migration of Product Collection and Product Button blocks to the new `store()` API [#11558](https://github.com/woocommerce/woocommerce-blocks/pull/11558)
1. Load a template that contains the Product Button blocks: ie, the `/shop` page.
2. Do some smoke testing and make sure there are no regressions and products can be added to the cart without issues.
### Preserve shrinkColumns value when switching the layout type of Product Collection [#11905](https://github.com/woocommerce/woocommerce-blocks/pull/11905)
1. Go to Editor
2. Add Product Collection block
3. Enable "Responsive" option
4. Switch view from Grid to Stack and back to Grid - try both Inspector Controls and Toolbar option (red rectangles on the screenshot).
![Screen Shot 2023-11-22 at 17 03 21 PM](https://github.com/woocommerce/woocommerce-blocks/assets/20098064/ea3a20da-f4c5-49cc-acff-de600139ca28)
5. When switching back to Grid view, "Responsive" should be still ENABLED
6. Repeat with the option DISABLED
### Enable shrink columns option in Product Collection by default [#11821](https://github.com/woocommerce/woocommerce-blocks/pull/11821)
#### Case 1: Default Product Collection
1. Go to Editor
2. Add Product Collection block
3. Expected: it has "Responsive" enabled by default
#### Case 2: Patterns
1. Go to Editor
2. Insert patterns:
- Product Collection Grid
- Product Collection Full Grid
- Product Collection Simple Grid
- Product Gallery
3. Make sure each of them has "Responsive" option enabled by default
4. Insert pattern Product Collection Rows - it has `Stack` view enabled by default and then "Responsive" is not available. Change the view from `Stack` to `Grid`
5. Make sure it has "Responsive" option enabled by default
#### Testing notes for the development team
1. While on `trunk`, add Product Collection block
6. It has "Responsive" option disabled by default
7. Enter "Code editor" and
8. Find and remove `"shrinkColumns":false"` - this step is to mimic the case when someone added the block before the option was even introduce
9. Save the post/template
10. Switch to this branch `add/enable-shrink-column-in-product-collection-by-default`
11. Refresh the Editor
12. Change number of columns - this step is to trigger `setAttribute` function
13. Expected: make sure this block still has the "Responsive" option DISABLED
### Reorganise Columns controls and fix undefined problem in Product Collection settings [#11937](https://github.com/woocommerce/woocommerce-blocks/pull/11937)
1. Go to Editor
2. Add Product Collection block
3. Check Inspector Controls
4. "Columns" and "Responsive" look like in the AFTER image:
| Before | After |
|--------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------|
| <img width="286" alt="image" src="https://github.com/woocommerce/woocommerce-blocks/assets/20098064/decb0d07-f6d6-4881-aa21-602d120c3865"> | <img width="288" alt="image" src="https://github.com/woocommerce/woocommerce-blocks/assets/20098064/f3a166f5-4c1b-42d2-b2c4-4627f759c7aa"> |
6. Click three dots next to "Settings"
7. There's no `undefined` entry, but "Columns" and "Responsive" like in the AFTER image:
| Before | After |
|--------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------|
| <img width="289" alt="image" src="https://github.com/woocommerce/woocommerce-blocks/assets/20098064/80c33902-f2da-4474-8658-50fc39dd43fd"> | <img width="285" alt="image" src="https://github.com/woocommerce/woocommerce-blocks/assets/20098064/06608aa3-a85d-43ec-b662-4ce6da634905"> |
### [Product Collection] Fix: HTML Entity Decoding in Taxonomy Controls [#11982](https://github.com/woocommerce/woocommerce-blocks/pull/11982)
1. Create a new post & add Product Collection block to it.
2. From filters dropdown, Add “Taxonomies” filter. This will add “Product Categories” and “Product Tag” taxonomy filters to inspector control.
3. Inside “Product Categories” filter, search a category that contains an HTML Entity.
1. If you dont have any category with HTML entities, then you will need to either rename the existing category or create a new category with HTML entities. For example, “Electronics & Gadgets” or “Health & Wellness / Supplements”
2. Verify that HTML entities show as expected.
4. Perform step 3 for “Product Tags” too.
### Reviews by Product: fix reviews count not appearing in product selector [#11976](https://github.com/woocommerce/woocommerce-blocks/pull/11976)
1. Create a post or page.
2. Add the Reviews by Product block.
3. Verify the number of reviews next to the product names:
<img src="https://github.com/woocommerce/woocommerce-blocks/assets/3616980/099d4c8a-c2bb-4615-9006-c3283924f768" alt="" width="646" />
4. Using the browser Inspector (<kbd>F12</kbd>), select one of the checkboxes.
5. Verify the value of the `aria-label` shows the correct value (`<product_name>, has <reviews_count> reviews`). Ie: `Hoodie with Logo, has 1 review`.
<img src="https://github.com/woocommerce/woocommerce-blocks/assets/3616980/afc4aeaa-6fea-4fac-ad54-2e03f8e02e1a" alt="" width="321" />
### Move `CheckboxControl` to components package and leave alias in checkout package [#11662](https://github.com/woocommerce/woocommerce-blocks/pull/11662)
1. Install [WooCommerce Stripe Payment Gateway](https://wordpress.org/plugins/woocommerce-gateway-stripe/) and set it up
2. Edit the Checkout page in the Site editor, select the "Terms and Conditions block" and set the "Require checkbox" option to true.
3. Ensure that order notes are enabled on the block. Ensure the checkboxes for these blocks all appear and the block as a whole renders OK.
4. As a logged-in user, add an item to your cart and go to the Checkout block in the front-end.
5. Ensure the "Use same address for billing" checkbox is available and works as intended.
6. Scroll down to the Terms and conditions, ensure the checkbox renders and works correctly.
7. Check the "Add a note to your order" box. Ensure it works and the textarea renders.
8. Check out using Stripe and ensure the "Save payment information to my account for future purchases." renders.
9. Check this box and check out, ensure checkout is successful.
10. Add an item to your cart again and go back to the Checkout block. Ensure your card was saved.
11. In the site editor, create a page and add the "All Products" and "Filter by Attribute" blocks.
12. On "Filter by Attribute" choose an attribute with multiple terms and ensure the checkboxes show up in the editor.
13. View this page on the front-end and ensure they render there, too.
### Import CheckboxControl from a single place [#12015](https://github.com/woocommerce/woocommerce-blocks/pull/12015)
1. In Checkout, click the order note label.
2. It should not open Shipping as billing checkbox.
### Update notice for default cart and checkout [#11861](https://github.com/woocommerce/woocommerce-blocks/pull/11861)
1. Create a test page and add the Cart block to it.
2. Open the settings sidebar.
3. Select the Cart block.
4. Verify that the notice _"If you would like to use this block as your default cart, update your page settings."_ no longer appears as a warning (yellow border and background), but as info (blue border, white background).
5. Click the link _"[update your page settings"_.
6. Verify that the notice _"Page settings updated"_ becomes visible.
7. Repeat steps 1. until 6. with the Checkout block. In step 4., the message should say _"... as your default checkout, ..."_ instead of _"... as your default cart, ..."_.
#### Cart block
<table>
<tr>
<td valign="top">Before:
<br><br>
<img width="292" alt="Screenshot 2023-11-21 at 18 17 37" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/22e60e36-9818-4a0a-8393-5b5cd53f25d0">
</td>
<td valign="top">After:
<br><br>
<img width="293" alt="Screenshot 2023-11-21 at 17 57 27" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/e5ca3c95-f17a-47a0-b6e9-23395cc14144">
</td>
</tr>
</table>
#### Checkout block
<table>
<tr>
<td valign="top">Before:
<br><br>
<img width="293" alt="Screenshot 2023-11-21 at 18 11 48" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/161a9bb4-626d-49d5-bf93-bc03a2d1d8dc">
</td>
<td valign="top">After:
<br><br>
<img width="295" alt="Screenshot 2023-11-21 at 18 08 52" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/cea552a4-4fd0-427a-8517-0e3eff105f9d">
</td>
</tr>
</table>
### Validate coupon usage against customer id AND emails [#11860](https://github.com/woocommerce/woocommerce-blocks/pull/11860)
#### From logged in to logged out
1. Create a new coupon and limit its usage to 1 per customer.
2. Logged in, with an email you remember, place an order using that coupon, it should pass.
3. Logged out, using the same email, try placing an order with that coupon, you should get a top level error "coupon_name" was removed from the cart. Coupon usage limit has been reached.".
#### User email vs billing email
1. Create a new coupon and limit its usage to 1 per customer.
2. Logged in, with an user email you remember, place an order using that coupon, and a different billing email. It should pass.
3. Logged out, using the same user email (not the billing email), try placing an order with that coupon, you should get a top level error "coupon_name" was removed from the cart. Coupon usage limit has been reached.".
#### From logged out to logged in
1. Create a new coupon and limit its usage to 1 per customer.
4. Logged out, use the coupon with an email you remember, that email should belong to an existing user.
5. You should be able to place the order fine.
6. Logged in with the user that own that email.
7. Go to checkout, add the coupon, using the same email, try to place the order.
8. You should get a top level error.
9. Change your billing email to something else, add the coupon again.
10. Try to place the order, you should get an error.
#### General regression testing
1. Create a new coupon and limit its usage to 1 per customer.
2. Logged in, with an email you remember, place an order using that coupon, it should pass.
3. Logged in again, back to checkout, change your email, and try adding the coupon, you should get an inline error that you can't use the coupon.
### fix: store notices always shows as an error type #11768 [#11932](https://github.com/woocommerce/woocommerce-blocks/pull/11932)
1. Go to the Cart block.
2. In the web dev console type: `wp.data.dispatch('core/notices').createSuccessNotice( 'This is a success message, it should show in green!', { context: 'wc/cart' } )`
3. See the "success" notice display in green.
| Before | After |
|---------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|
| ![Screenshot 2023-11-24 at 09 15 27](https://github.com/woocommerce/woocommerce-blocks/assets/4479106/cddb89e8-36a2-4326-8953-88851f39973b) | ![Screenshot 2023-11-24 at 10 25 10](https://github.com/woocommerce/woocommerce-blocks/assets/4479106/ff9c2ee9-67d2-4cd1-8498-19793c148b72) |
### Switch to NoticeBanner component inside Store Notices Block placeholder [#11920](https://github.com/woocommerce/woocommerce-blocks/pull/11920)
1. Go to Appearance > Editor > Templates > Page: Cart.
2. Confirm the Store Notices Block has an informational notice appearance (blue banner).
| Before | After |
|-------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------|
| ![Screenshot 2023-11-23 at 12 21 56](https://github.com/woocommerce/woocommerce-blocks/assets/90977/3d68acba-08e3-4207-b29a-2debc38f5e5f) | ![Screenshot 2023-11-23 at 12 21 15](https://github.com/woocommerce/woocommerce-blocks/assets/90977/3cb98e30-22d4-44ac-8a0b-dc2abbb6d113) |
### Improve readability of order note [#11944](https://github.com/woocommerce/woocommerce-blocks/pull/11944)
1. Add a product to your cart and go to the checkout.
2. Add an order note and place the order.
3. Verify that the order note is visible below the order detail table.
4. Verify that the order detail table has the same border radius as the order note section.
<table>
<tr>
<td valign="top">Before:
<br><br>
<img width="1138" alt="Screenshot 2023-11-27 at 14 37 44" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/14b932c9-4c0a-40d0-a9f2-7ffff81836c4">
</td>
<td valign="top">After:
<br><br>
<img width="1135" alt="Screenshot 2023-11-27 at 14 36 28" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/a3f53c2a-15eb-4c65-b890-fbf818890feb"></td>
</tr>
</table>
### Limit number of visible incompatible extensions in sidebar notice [#11972](https://github.com/woocommerce/woocommerce-blocks/pull/11972)
> [!NOTE]
> Things to keey an eye on while testing:
>
> - Number of visible extensions by default and within dropdown.
> - String for exact 1 vs. more than 1 incompatible extension.
> - Chevron changed direction based on opening/closing the dropdown.
> - Link color is gray and link is underlined.
> - The dropdown functionality works is cross-browser compatible.
<details>
<summary>
Test with 2 extensions
</summary>
1. Install and activate the following helper plugins:
- [helper-plugin-01.zip](https://github.com/woocommerce/woocommerce-blocks/files/13487656/helper-plugin-01.zip)
- [helper-plugin-02.zip](https://github.com/woocommerce/woocommerce-blocks/files/13487657/helper-plugin-02.zip)
2. Create a test page and add the Cart block.
3. Select the Cart block and open the sidebar.
4. Verify that the two incompatible extensions are visible.
5. Verify that no dropdown, to more extensions, is visible.
6. Repeat steps 2. until 5. using the Checkout block.
<img width="283" alt="Screenshot 2023-11-28 at 19 13 46" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/c98dae13-a013-447a-825f-48b2ec46c6f4">
</details>
<details>
<summary>
Test with 3 extensions
</summary>
1. Install and activate the following helper plugins:
- [helper-plugin-01.zip](https://github.com/woocommerce/woocommerce-blocks/files/13487757/helper-plugin-01.zip)
- [helper-plugin-02.zip](https://github.com/woocommerce/woocommerce-blocks/files/13487758/helper-plugin-02.zip)
- [helper-plugin-03.zip](https://github.com/woocommerce/woocommerce-blocks/files/13487759/helper-plugin-03.zip)
2. Create a test page and add the Cart block.
3. Select the Cart block and open the sidebar.
4. Verify that the two incompatible extensions are visible by default.
5. Verify that the dropdown says `1 more incompatibility`.
6. Click the dropdown link and verify that 1 incompatible extension is visible.
7. Repeat steps 2. until 6. using the Checkout block.
<table>
<tr>
<td valign="top">Closed:
<br><br>
<img width="283" alt="Screenshot 2023-11-28 at 21 32 30" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/ba6a42ba-9934-4510-8ba7-c1513fc05c85">
</td>
<td valign="top">Open:
<br><br>
<img width="283" alt="Screenshot 2023-11-28 at 21 32 38" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/e2079194-eca8-40df-baca-0691f5930d8e">
</td>
</tr>
</table>
</details>
<details>
<summary>
Test with 10 extensions
</summary>
1. Install and activate the following helper plugins:
- [helper-plugin-01.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488042/helper-plugin-01.zip)
- [helper-plugin-02.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488043/helper-plugin-02.zip)
- [helper-plugin-03.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488045/helper-plugin-03.zip)
- [helper-plugin-04.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488046/helper-plugin-04.zip)
- [helper-plugin-05.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488047/helper-plugin-05.zip)
- [helper-plugin-06.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488049/helper-plugin-06.zip)
- [helper-plugin-07.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488050/helper-plugin-07.zip)
- [helper-plugin-08.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488051/helper-plugin-08.zip)
- [helper-plugin-09.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488052/helper-plugin-09.zip)
- [helper-plugin-10.zip](https://github.com/woocommerce/woocommerce-blocks/files/13488053/helper-plugin-10.zip)
2. Create a test page and add the Cart block.
3. Select the Cart block and open the sidebar.
4. Verify that the two incompatible extensions are visible by default.
5. Verify that the dropdown says `8 more incompatibilities`.
7. Click the dropdown link and verify that 8 incompatible extension are visible.
8. Repeat steps 2. until 6. using the Checkout block.
<table>
<tr>
<td valign="top">Closed:
<br><br>
<img width="283" alt="Screenshot 2023-11-28 at 21 24 23" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/6cdd2a81-fa59-4e4f-ada0-dce1bacdda87">
</td>
<td valign="top">Open:
<br><br>
<img width="282" alt="Screenshot 2023-11-28 at 21 30 26" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/e2bb8b51-a253-4c11-9340-2210111e940c">
</td>
</tr>
</table>
</details>
### Decrease modal width [#12003](https://github.com/woocommerce/woocommerce-blocks/pull/12003)
1. Install and activate the following helper plugin:
[helper-plugin-01.zip](https://github.com/woocommerce/woocommerce-blocks/files/13522252/helper-plugin-01.zip)
2. Create a test page and add the Cart block to it.
3. Select the Cart block and open the sidebar.
4. Click the button `Switch to classic cart` in the incompatible extension notice.
5. Verify that the model has a max-width of 480px.
6. Replace the Cart block with the Checkout block.
7. Select the Checkout block and open the sidebar.
8. Click the button `Switch to classic checkout`.
9. Verify that this model also has a max-width of 480px.
<table>
<tr>
<td valign="top">Before:
<br><br>
<img width="1280" alt="Screenshot 2023-12-01 at 14 23 02" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/c1ce59b3-1d5d-4072-bd5b-aec8804cccca">
</td>
<td valign="top">After:
<br><br>
<img width="1280" alt="Screenshot 2023-12-01 at 14 24 20" src="https://github.com/woocommerce/woocommerce-blocks/assets/3323310/a491a946-0a4f-4b5e-b94f-958a4efb2789">
</td>
</tr>
</table>
### Revert "Remove unused Add to Cart product element (#11948)" [#12033](https://github.com/woocommerce/woocommerce-blocks/pull/12033)
1. Add the Mini-Cart block and the All Products block to the same post or page.
2. View the post in the frontend.
3. Open the Mini-Cart.
4. Verify there is no JS error and the Mini-Cart contents (in case you have added a product to your cart) can be seen.
### Implement the Block Hooks API to automatically inject the Mini-Cart block [#11745](https://github.com/woocommerce/woocommerce-blocks/pull/11745)
Currently, the application of this auto-injection _only_ applies when Twenty Twenty-Four is active. In future iterations, we can expand the list of themes this supports as we test this out and/or eventually remove the restrictions once the Block Hooks API has more support.
General expectations for testing:
- The mini-cart block should only appear after the navigation block in header patterns or template parts.
- It should not appear in custom patterns or template parts.
- It should only be auto-injected when the Twenty Twenty-Four theme is active.
- You should never see two mini-cart blocks in a header pattern or template part (for example WooCommerce header patterns should be untouched).
- If the mini-cart block is moved or removed and the template part/pattern/template is saved, that should persist and not change on reload.
- The auto-injection should be reflected on the frontend.
With TT4 active
- [ ] First test without these changes and take note of header template parts and patterns that don't have the mini-cart block (via the site editor).
- [ ] With this work enabled, verify that header template parts and patterns have the mini-cart block injected (see GIFs below for expectations).
This is how things look _before_ this PR's changes:
[https://github.com/woocommerce/woocommerce-blocks/assets/1429108/4d61ec4e-f1ab-478a-850f-d568993599df](https://github.com/woocommerce/woocommerce-blocks/assets/1429108/4d61ec4e-f1ab-478a-850f-d568993599df)
And how things look after:
[https://github.com/woocommerce/woocommerce-blocks/assets/1429108/289aaccb-0877-462f-8190-fa046aba1799](https://github.com/woocommerce/woocommerce-blocks/assets/1429108/289aaccb-0877-462f-8190-fa046aba1799)
- [ ] Validate the general expectations and verify they are true.