* Set data test id and allow complex component to have default and inherited values for all the actions
* Create cluster tests with steps; Create cluster E2E test
* Extend command to use selector matchers
* Create test for cluster navigation and deletion
* Extend commands to find by id as in get method
* Extend documentation with guidelines and info about E2E
* Correct cluster delete and details tests to get menu within speciftc cluster row
* Add remaining E2E tests for the cluster
* Add baseUrl to the paths
* Add RKE2 selection on cluster creation for CI
* Add E2E debugging information
* Rename clluster manager E2E for consistency
* Correct data test ID after rebase
* Prevent cluster provider errors if no management parameter is provided
* Prevent accessing objects in mutation if none is provided
* Remove imported cluster sample due discarded logic
* Reset RKE2 switch on cluster creation
* Adjust test naming for cluster manager
* Group tests under scoped cases
* Configure E2E tests for CI
* Add Github CI configuration for E2E
* Write welcome and first login tests
* Add Docker initialization script
* Sort tests
* Allow to trigger input checkboxes from labels
* Run setup script in a single test to avoid server requirement restrictions with authentication in a single session
* Trigger E2E tests on PR to master only
* Correct password for E2E; extend documentation about authentication
* Allow E2E jobs to be excluded if present tag in the title
* Build and start project for E2E using SPA flag and prod env for CI
* Assure link presence while navigating in E2E tests; Improve readability
* Allow to skip setup E2E tests for remote initialized instances
* Update Cypress related libraries
* Replace class to id selections for E2E tests
* Create Page Actions PO; Move navigation related tests; Ensure Home page tests to be reliable
* Correct login redirection to include local
* Reset cards for E2E changelog
* E2E: Add manual waiting while opening the side navigation
* Change CI E2E skip exception from title to label
* E2E: Increase waiting time for side navigation racing condition issue
* Remove bootstrap setup assertion
* Allow to manually trigger E2E tests
* Disabling all flaky tests which cause race condition random failure
* Remove setup scripts and commands due opted out solution
* Rename files, tests and PO
* Remove libraries added while rebasing
* Replace ID with data-testid for E2E element selection
* Skip entirely E2E test Job on label in favor of single steps condition
* Use run ID and number for artifacts names
* Updated documentation related to E2E selectors and added best practice link
* Remove passed tests video after each test
* Add getId command to select elements by attribute
* Correct all the selections of all the existing tests; Add related data id for testing purpose
* Add terms and ignore log issue with TS
* Add missing ID to data conversion
* Replace password cases with new PO
* Restore locale login check in E2E
* Enable artifacts upload only on failure
* Disable video artifacts upload from E2E runs
* Correct linting issue with a TODO note
* Correct script naming and docker command to avoid killing other containers
* Remove unnecessary --spa flag from existing scripts
* Correct tests to do not rely spcifically to the version while testing changelog text
* Adjust documentation definitions
* Reference issue in the TODOs
* Allow failing if no container found while stopping docker
* Rephrase E2E commands reference in docs
* Correct Docker stop command typo with image name
* Doc
* v0.7.0
* v0.7.1
* v0.7.2
* Add creators
* v0.1.14
* v0.1.17
* Add Yarn link
* Tidy ups and typos
* Allow models to be loaded from plugins
* v0.1.15
* v0.1.18
* v0.6.6
* Improve readme, fix cyperss log msg
* v0.1.17
* v0.1.19
* v0.6.7
* v0.6.8
* Fix logo ref when in shell
* Fix lint issues
* Fix error in example
* Fix script to work on linux
* Add ability to revert moves without losing changes
* Fix bug with custom models in a plugin
* Fix build of UI packages
* Add dist-pkg to .eslintignore
* Pull out util from extend-router to prevent router being pulled in UI packages
* Update PLUGINS.md
* Remove duplicate dependency
* Reduce size of built UI packages
* Share codemirror. Other tidy ups
* Further improvements
* Tidy ups to support i18n in plugins
* Clen up add comments
* More clean-ups and comments added
* Rename from extension to plugin
* Missed file in rename
* v0.6.9
* TIdy ups following rename
* v0.1.20
* v0.1.21
* More refactor and tidy up
* v0.1.22
* v0.1.18
* v0.1.19
* v0.1.23
* v0.6.10
* Version Packages. Improve naming. Unload.
* v0.6.11
* v0.1.20
* v0.1.21
* v0.1.24
* v0.6.12
* v0.1.25
* v0.1.22
* v0.6.13
* Fix issues when plugin is builtin
* Add missing files
* Fix lint issues and watcher ignores
* Fixes following review
* v0.1.28
* v0.1.31
* v0.6.20
* Fix coer.js version
* Fix bug where plugins included via npm don't work
* Changes post merge
* Move plugins doc to dev guide, add note at top of README
* Update cypress version
* Add note about the reset --hard in rejig -d
* Fixes post merge
* Rename @ranch to @rancher and ad plugins
* Improve routes support, add package assets support
* Add uninstall hooks and pass interal opts
* Fix rejig script
* Minor fixes
* Routing tweaks
- attempted to improve `addRoutes` typing, failed a lot
- improved typings in plugins.ts
- added "@pkg/*" entry and vue-shim (for importing components) to the pkg creator
- fixed some linting
- safely fail when Verdaccio isn't running
- fixed some typos
* Remove frontmatter-markdown-loader reference from nuxt-config
* Revert "Remove frontmatter-markdown-loader reference from nuxt-config"
This reverts commit 29ef6f2f7b.
* Exclude creators from dashboard build
* Revert "Exclude creators from dashboard build"
This reverts commit 8ede93ee7c.
* Ingore creators via tsconfig
- We're still susceptible with vue shims in multiple packages
- Need to determine why packages can't use shim from route
- Probably need to move `./vue-shim.d.ts` in to `./shell`. Needs testing with a pkg that imports a component
Co-authored-by: Richard Cox <richard.cox@suse.com>
# Conflicts:
# components/nav/Header.vue
# nuxt.config.js
# package.json
# yarn.lock
- Tests are now in their own folder and more suitably organised / named
- E2E Page Object components have been added and used everywhere applicable (not every test has been updated to have POs, though where they exist they're used). For more info on POs see the changes to the `development.md` doc
- Some examples of PO functionality
```
HomePage.gotTo()
new HomePagePo().checkIsCurrentPage()
new BurgerMenuPo().clusters()
new AsyncButtonPO('.my-button').isDisabled()
new LoginPagePo().username().set('admin');)
```
TODO
- Majorly expand tests and POs
- Separate tests into short, smoke test style groups and longer more time consuming tests. The smoke tests could run on PRs and the full suite nightly.
- The existing tests could be sped up by avoiding a page navigation before each individual test, though this comes with a higher chance of bleeding state.