Commit Graph

114 Commits

Author SHA1 Message Date
Tomasz Tunik f15d628610 Fix 404 and 500 errors in E2E test logs, editor and front-end. (https://github.com/woocommerce/woocommerce-blocks/pull/5989)
* Change atomic blocks to not use custom webpack build paths

we want to always load lazy loaded components from their default paths
to avoid having to handle importing components in different ways for
regular and atomic component packages

* Add footer parts to test themes

The Site Editor is expecting the footer parts to be there or it will try to
load them anyways and throw a 404. It's not breaking, but it's polluting
the console.

* Use REST API to tear down the templates

Previously, we used a util called `trashAllPosts` which navigated to the post UI
and deleted all the posts to tear down any side-effects of template editing tests.

However, with a [recent change](14e20f72b5),
WP Core removed the UI for those and that made our tests meet a 500 error.

Using the REST API should also make everything faster.

* Remove deprecated pupeteer waitFor usage

was still present in attribute-filter.test.js

* Update package-lock.json

* pin package versions

* Unify all atomic blocks to register on php side

* Remove Atomic Blcoks chunk_translation handling from AllBlocks

Before it was responsible for enabling translations for all the atomic blocks

* Add per atomic block chunk_translation registration

* update @wordpress/e2e-test-utils to 6.0.2

* add optional puppeteer

* pin workflows node version to 16.13.2

* upgrade package-lock

* upgrade package-lock

* set react and react-dom as peerDeps

* remove atomic block registration

Co-authored-by: Lucio Giannotta <lucio.giannotta@a8c.com>
Co-authored-by: Luigi <gigitux@gmail.com>
2022-03-10 11:00:23 +01:00
Alex Florisca 2e674dd6c0 Critical flow: Can see correct tax (https://github.com/woocommerce/woocommerce-blocks/pull/5900)
* Tax is displayed correctly e2e test

* Add extra utils to shopper

* add single e2e test script oin package.json

* Feedback changes from Niels

* Test tax is correct on summary page

* Check if CI test passes

* Longer timeout for tax test

* change timeout in jest config

* increate jest timeout

* Test

* Test

* Test

* setTimeout outside of tests to 120000

* Address raluca's feedback and timeout everywheregaa

* Increase timeout on  for search box

* set jest timeout to 120000

* Raluca's suggestions

* Debug

* Increase search timeout to 5000

* Only run Tax e2e tests in CI for quicker debug - REMOVE THIS

* use waitforSelector

* 30s delay for toMatchElement

* Let'shope this works

* Remove toMatchElement

* waitForSelector

* Run debug test only

* Debug tax test

* debug taxes

* shopper using toMatchElement again

* Remove the 30000 timeout delay from toMatchElement

* Run all tests but only once

* Remove tax test

* Revert "Remove tax test"

This reverts commit 7db34120e1e91f4fd26514fdb9525cac2a6066bb.

* Delete the minicart test

* Revert "Revert "Remove tax test""

This reverts commit 31dd654e52f37fcd02ccd25336958248bef495c6.

* Revert "Delete the minicart test"

This reverts commit 5595f0834a975d097a300bc0c7cbf643caa8b764.

* tax test

* block addToCart

* Put back block functions

* Refactor block.addToCart

* mini-cart e2e test uses shopper.block.emptyCart()

* only run shopper tests in CI

* Run frontend and shopper tests and change waitFor -> waitForTimeout

* Run frontend tests in CI

* Run CI e2e tests again

* Skip legacy template blocks

* Skip legacy template test but run all others

* Switch to storefront instead of twentytwentyone after legacy-template-blocks tests finish

* Tidy up

* fix typo

* Fix ESLint issue

Co-authored-by: Saad Tarhi <saad.trh@gmail.com>
Co-authored-by: Saad Tarhi <saad.tarhi@automattic.com>
2022-03-08 14:50:16 +00:00
Alex Florisca 3f1ebfd631 Update version numbers in bug report template (https://github.com/woocommerce/woocommerce-blocks/pull/5818) 2022-02-15 16:08:38 +00:00
Raluca Stan b72744988b Update release-initial-checklist.md (https://github.com/woocommerce/woocommerce-blocks/pull/5690)
* Update release-initial-checklist.md

This PR creates a new section `If this release is deployed to WordPress.org...` similar to the one in `patch-initial-checklist.md`

* Update patch release checklist
2022-02-07 16:16:00 +01:00
Mike Jolley 67283c02be Compare assets from builds (https://github.com/woocommerce/woocommerce-blocks/pull/5634)
* Comparison workflow

* Update locks
2022-02-02 14:56:16 +00:00
Mike Jolley 81bb982c5e Include issue submission link in the footer of all documention (.md files) (https://github.com/woocommerce/woocommerce-blocks/pull/5655)
* Add links to single routes in main index woocommerce/woocommerce-blocks#4473

* Footer

* Feedback template

* Remove footer from existing MD files

* Add doc footer script

* Apply script to all docs

* Fix examples
2022-02-02 14:27:46 +00:00
Thomas Roberts 426eb51830 Update Checkout block E2E fixture and increase node version in GH actions (https://github.com/woocommerce/woocommerce-blocks/pull/5678)
* Remove unnecessary setup step and use node v16 in E2E action

* Ensure storefront is active

* Use new checkout fixture

* Try with only checkout test

* Update package.json

* Run all tests, not just checkout
2022-02-01 11:14:16 +00:00
Seghir Nadir 40ba5710a5 Update review automation to use Rubik name 2022-01-24 21:33:23 +01:00
Luigi Teschio b0a3e95527 update checklist for the deploy process (https://github.com/woocommerce/woocommerce-blocks/pull/5619) 2022-01-24 14:15:21 +01:00
Raluca Stan 33e3d9179a Update patch-initial-checklist.md (https://github.com/woocommerce/woocommerce-blocks/pull/5538)
Update the patch release checklist to include the email confirmation step
2022-01-11 11:58:51 +01:00
Raluca Stan 7073e3bb5f Update release-initial-checklist.md (https://github.com/woocommerce/woocommerce-blocks/pull/5537)
Add information about the the confirmation email step for the release
2022-01-11 10:28:26 +00:00
Raluca Stan fc01458670 Update release initial checklist template (https://github.com/woocommerce/woocommerce-blocks/pull/5526)
* Update release initial checklist template

This PR includes more information about updating the Woo Blocks version in the WooCommerce repository:
- it updates the PR used as an example
- it updates the url for the composer.json file in WC repo
- it add info about how to update the composer.json and lock files

* Update .github/release-initial-checklist.md
2022-01-07 17:46:25 +01:00
Albert Juhé Lluveras ea64dadb16 Update PR assignment automation to match new Team Kirigami name (https://github.com/woocommerce/woocommerce-blocks/pull/5534) 2022-01-07 13:40:41 +01:00
Albert Juhé Lluveras a9487b9ade Fix WooCommerce blog links in release checklist (https://github.com/woocommerce/woocommerce-blocks/pull/5218) 2021-11-23 15:01:18 +01:00
Darren Ethier 710d738008 add note about minimum required wc version check in release checklist (https://github.com/woocommerce/woocommerce-blocks/pull/5099) 2021-11-08 15:34:52 -05:00
Darren Ethier 49a2883bc0 add note about pinging porter for testing to the release checklist (https://github.com/woocommerce/woocommerce-blocks/pull/5098) 2021-11-08 15:23:07 -05:00
Darren Ethier e347634205 added improvements to PR template (https://github.com/woocommerce/woocommerce-blocks/pull/5031) 2021-10-29 07:00:59 -04:00
Thomas Roberts 255a74b328 Add screenshots on E2E test failures (https://github.com/woocommerce/woocommerce-blocks/pull/4898)
* Add test environment to catch errors

* Add jest-circus and jest-html-reporters

This is so we can log the screenshots and errors that happen during E2E tests.

* Use the jest reporters and jest-circus to run the E2E tests

* Force cart test to break

Revert this!

* Upload jest report artifact when tests fail

* Run artifact upload on failure

* Upload entire report directory to artifact

* Revert "Force cart test to break"

This reverts commit c57f2c5ab1d7b60d8824d854c1cb9a8281a71c4b.

* Update .gitignore and jest.config

* Force cart test to break

* Force cart test to break

* Remove <rootDir> from jest-html-reporter path

This was causing the artefact not to upload.

* Revert "Force cart test to break"

Co-authored-by: Niels Lange <info@nielslange.de>
2021-10-08 11:58:44 +01:00
Darren Ethier 95d84956de Update workflow to only act on pull_request open 2021-09-20 07:16:38 -04:00
Darren Ethier 8dd022c642 Add missing spaces in automation config. 2021-09-17 16:59:30 -04:00
Darren Ethier 33dc689ca9 Implement automation to automatically assign the team a PR author belongs to for reviewing the PR. 2021-09-17 16:27:09 -04:00
Darren Ethier a8bbc4dc37 Delete CODEOWNERS
I'm working on an automation that conflicts with this.
2021-09-17 16:20:30 -04:00
Thomas Roberts df3b1a2202 Update release PR checklist to include files for version bump (https://github.com/woocommerce/woocommerce-blocks/pull/4755)
* Update release PR checklist to include files for version bump

* Change list of files to checkboxes
2021-09-16 12:11:59 +01:00
Darren Ethier b6a19764aa Update patch release pr template 2021-09-08 15:39:25 -04:00
Darren Ethier 2fb9543114 Numerous tweaks to various GH templates.
- updated release pull request description template to be more condensed and require no editing.
- moved some elements of release pull request items into pull request template (handled at the PR level instead of the release level).
- updated the release pull request checklist templates to include mobile and desktop test coverage for ui changes.
2021-09-08 15:37:42 -04:00
Darren Ethier 7df04e2730 Add checklist item for reminding porter about auditing experimental interfaces. 2021-09-08 14:14:47 -04:00
Mike Jolley 1d79bb6365 PHPUnit Tests running on wp-env (https://github.com/woocommerce/woocommerce-blocks/pull/4567)
* Tidy up bootstap so it uses autoloaders and works with the known plugin paths

* eslint ignore woocommerce bin

* Use WC from bin in wp-env

* Git ignore woocommerce in bin

* Remove reliance on core framework across phpunit tests

* Simplify bootstrap - since test framework is no longer required, there is no need to pull in woo from github

* Remove unused configs

* Update CI

* Implement PHPunit Polyfill

* Abstract the test case

* Update lock

* remove chown

* experiment: try sudo

* move phpversion to first run

* Remove 7.0 tests :(

* test plugin override for 5.5 test

* Use dev version

* Fix formatting

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
2021-08-20 14:58:32 +01:00
Mike Jolley 717465ed99 Combobox patch to prevent the suggestion list being left open after browser autocomplete (https://github.com/woocommerce/woocommerce-blocks/pull/4590)
* Combobox patch

* Update a package to invalidate CI cache

* Update cache handling

* revert eslint package change
2021-08-17 13:25:11 +01:00
Darren Ethier 5ebbd41220 Update relevant files due to L2->L0 policy change for minimum required versions. (https://github.com/woocommerce/woocommerce-blocks/pull/4484)
* update README files with version requirements

* update phpcs config

* update default environment for tests locally

* update workflows to only test against versions matching new policy

* update plugin header for new version policy

* restore older WP version support in E2E tests and PHPCS

I realized that we might still want to test against L2 WP versions in our E2E tests until those tests can be moved to WC core. While the feature plugin is L0, we still need to support L2 for existing features that are already surfaced in the WooCommerce plugin package.

Also with PHPCS if there are fixes to older things in the codebase, we will need to preserve the usage of L2 friendly (back-compat) code.

* add detection of Woo Core version to bootstrap

* update version used in phpunit tests

* add links to version policy update post

* restore 5.5.1 for Woo Core version

Getting errors with 5.5.2 - not sure what's going on but might be the tag isn't available as expected for 5.5.2 maybe?

* switch to hardcoded version header reference

PHPUNIT was tripping on this for some reason.

* remove older WP version e2e test workflows

* fix phpunit tests for new woo test suite

Woo Core now uses a container and has some mocks that are used in some legacy test helpers.

* remove explicit set WOO_VERSION for phpunit tests.

This should default to latest for the GH workflow runs.

* Update release PR template.

Add some explicit instructions around updating required WP and WC versions at time of release.

* use latest WOO_VERSION in .env

* some improvements to reduce the things needing updated

* remove extraneous code

* Add some more checklist items to release PR templates

* remove unnecessary conditional

* remove is-dismissible css classes

* Improve clarity of error messaging

* Update README.md

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>

* remove checklist items about versions for patch releases

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2021-07-29 10:52:34 -04:00
Mike Jolley 9975868956 Add a workflow for the assign-milestone automation (https://github.com/woocommerce/woocommerce-blocks/pull/4342)
* Add a workflow for the assign-milestone automation

* add milestone_bump_strategy

* "none" bump strategy
2021-07-08 10:49:32 +01:00
Mike Jolley 33c55353f7 Add Terser to preserve translator comments (https://github.com/woocommerce/woocommerce-blocks/pull/4379)
* Tidy and document current configs

* Add terser package

* sharedConfig with Terser plugin setup

* replace todo

* revert change to alias

* Package lock update

* ci to install

* Revert "ci to install"

This reverts commit a65b7f3ca8ef8ab1cb78f825a43ca8df07f784bb.

* revert shared config

* fix extra comma

* tweak setup

* Missing jsx
2021-06-29 12:18:29 +01:00
Darren Ethier c391899258 Fix broken phpunit tests (https://github.com/woocommerce/woocommerce-blocks/pull/4305)
* allow for WOO_VERSION config in tests setup

* pass through WOO_VERSION environment var to container

* force specific WOO_VERSION value for phpunit test run

* try passing through environment variable via docker arg

Also set .env for controlling local runs of phpunit
2021-06-03 09:35:52 +02:00
renovate[bot] b0979d5955 Update ataylorme/eslint-annotate-action action to v1.2.0 (https://github.com/woocommerce/woocommerce-blocks/pull/4062)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-04-23 16:56:36 +00:00
Raluca Stan c141f37f25 Update the initial checklist for the release md (https://github.com/woocommerce/woocommerce-blocks/pull/4067) 2021-04-15 17:22:03 +01:00
Darren Ethier 52a16542fb Add note about including changelog for WooCommerce Core package updates for patch releases. 2021-04-08 13:29:03 -04:00
Darren Ethier cc9f94908a Update release-initial-checklist.md
Add note about including changelog in package bump for WooCommerce Core updates.
2021-04-08 13:27:39 -04:00
Darren Ethier 5db03aa52c Updating release pull request workflow
Trying a different way of adding a commit to allow for pr creation on release pull requests. This way reduces both the number of commits and requires no actual file changes.
2021-03-24 13:35:50 -04:00
Thomas Roberts 1c986ebbf8 Split unit tests up from e2e tests (https://github.com/woocommerce/woocommerce-blocks/pull/3989) 2021-03-23 12:31:42 +00:00
Darren Ethier eba9361cb8 Update the `wp-env` package to latest (https://github.com/woocommerce/woocommerce-blocks/pull/3972)
* update wp-env package

* bump versions in e2e workflows

* Fix job names

* explicitly set core WP version

without this, the `mappings` configuration option causes breakage due to what appears to be a bug in the package.

* Change how GB install job is setup

`wp-env` currently has an issue where if you define the explicit WP version to install (vs just what is included by default), permissions aren’t configured correctly for the WP folder in the containers. So the ability to install plugins via cli is not possible. This only surfaces in linux environments.

I tried a number of ways to work around this but in the end the only foolproof way is to configure the environment to be setup with the installed plugin.
2021-03-17 11:06:36 -04:00
Mike Jolley f856756ace Update Single Product Test (https://github.com/woocommerce/woocommerce-blocks/pull/3924)
* Update Single Product Test

* duplicate test

* Try adding npm install @wordpress/e2e-tests@1.9.1

* @wordpress/e2e-test-utils@4.5.0
2021-03-05 13:33:58 +00:00
Thomas Roberts f923615949 Add information about hub authentication and GitHub releases (https://github.com/woocommerce/woocommerce-blocks/pull/3861) 2021-02-22 09:15:22 +00:00
Bartosz Budzanowski 43a4d0b1cc Revert "Update CODEOWNERS (https://github.com/woocommerce/woocommerce-blocks/pull/3794)" (https://github.com/woocommerce/woocommerce-blocks/pull/3798)
This reverts commit 65d98cef7d.
2021-02-05 11:08:36 +01:00
Bartosz Budzanowski 65d98cef7d Update CODEOWNERS (https://github.com/woocommerce/woocommerce-blocks/pull/3794)
* Update CODEOWNERS

* Add composer files.
2021-02-04 17:15:48 +01:00
Seghir Nadir 3dfbda1e8c Add circular dependency check and fix it (https://github.com/woocommerce/woocommerce-blocks/pull/3695)
* add circular dependency check and fix it

* only throw error

* udpate error message

* only throw on production

* better defaults

* add variable to travis

* double echo

* echo with -e
2021-01-20 20:33:50 +01:00
Darren Ethier 1693f97a44 Update close-stale-issues.yml
Fix errant space
2021-01-20 10:08:05 -05:00
Darren Ethier 091f6770d1 Add exempt issue label for stale workflow
Added the `Epic` label to the configuration for the stale workflow as epics will generally be long living issues.
2021-01-20 10:07:49 -05:00
Darren Ethier 10cfbb99f0 Update expiry trigger on stale automation workflow
Change days before close value to 10. I'm going to leave the days-before-stale at 60 because 30 is too short for our current velocity.
2021-01-20 10:06:04 -05:00
Darren Ethier 056a446832 change eslint workflow to use different method and action (https://github.com/woocommerce/woocommerce-blocks/pull/3693)
Our existing worfklow was giving a cryptic error that I couldn’t troubleshoot so decided to just switch to a different method
2021-01-17 14:06:24 -05:00
Darren Ethier 869c0a189e Delete clean-up-artifacts.yml
This was just a test so removing.
2021-01-17 10:37:40 -05:00
Darren Ethier 194ed59268 Update clean-up-artifacts.yml 2021-01-17 09:14:32 -05:00