diff options
author | dizzy <diosmosis@users.noreply.github.com> | 2021-12-09 11:14:17 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-09 11:14:17 +0300 |
commit | c77bd82060e0567819d20c745e2bd873ef5998f9 (patch) | |
tree | 4d1a681b472514d28d59da9b3d9502bdd442b85e /plugins/SitesManager | |
parent | 0c87f01093119ef9e6e41b16e84df068e8523276 (diff) |
[Vue] migrate piwik-reporting-menu directive to vue (#18423)
* fix a couple more bugs
* use jQuery click for expand on click
* undo submodule change
* rebuild vue
* get vue files to run
* missing element
* more fixes
* get more fields working properly
* rebuild
* fix even more issues
* [Vue] use jQuery click for expand on click (#18341)
* use jQuery click for expand on click
* undo submodule change
* migrate piwik-field directive and fix some issues
* forgot to add migrated directive files and get demo.twig to work
* use event target
* make sure angularjs and vue do not share data
* fix ng model mapping
* fix a couple more issues
* fix a couple more bugs
* more fixes
* mimic existing behavior where an empty value will result in an extra field appearing in a select option list, but only at first
* another fix
* built vue files
* more fixes
* do not use UMD if vue/src is not present
* use non-minified angularjs if in development mode
* deprecate custom template file property
* remove angularjs properties in scope properties (ie, $$hashKey) otherwise vue will fail when it tries to process them
* fixing some more issues from ui tests
* more fixes
* fix form field issue + patch jquery so .trigger() will also trigger events added via addEventHandler()
* true bc fix
* get the jquery patch to work
* ignore polyfill map
* fix ng-model issue in report limit in report export directive
* full width property was not handled properly before in angularjs
* do not try and parseInt null values
* fix several more issues for tests
* fix some tests
* fix data binding
* fix css class
* fixing more ui test issues
* do not decode model value of site name in site selector, so it is always the same as what is in the DB
* 4.6.0-rc2
* more ng-model fixes
* rebuild
* html tweaks
* add timeout to test
* rebuild
* fix another UI test
* rebuild vue files
* update some expected screenshots
* fix more issues
* Revert "[Vue] do not decode model value of site name in site selector, so it is always matches the DB value (#18356)"
This reverts commit 8c7539f073e7a49311cbe6dc2474eb1bbfb8718d.
* update screenshots
* more fixes
* another fix + screenshot update
* more screenshot updates
* more fixes
* even more fixes
* another ui test fix
* more type fixes
* rebuilt vue JS
* couple more fixes
* undo debugging
* do not convert undefined to bool
* update screenshot
* another bool checking fix
* rebuild vue files
* more fixes
* initial site value in field is assumed to be encoded
* file headers and custom field component support
* get custom component field code to work
* rebuild vue
* allow using angularjs templateFile for custom field (for BC)
* get angularjs template embedding to work for rollupreporting at least
* deal with some in source TODO items
* fix a couple more issues
* Use separate div in modals to display notifications otherwise Vue will erase modal content when initializing NotificationGroup component.
* build again
* refactor some code and fix an issue with checkbox array field handling in angularjs
* more fixes
* another fix
* even more fixes
* remove more todo
* hopefully the last changes
* update vue files
* update submodule
* revert debugging change + fix issue
* built vue files
* fix another select issue
* rebuild vue files
* fix broken refactor
* update two screenshots
* add some more timeouts and update screenshots
* initial conversion, loading w/o error
* tweaks
* get period selector work in UI
* fix site selector model binding
* rebuild vue
* fix viewDate not being kept in sync
* rebuild CoreHome
* [Vue] fix modal notification placement (#18377)
* Use separate div in modals to display notifications otherwise Vue will erase modal content when initializing NotificationGroup component.
* built vue files
* two fixes
* couple UI test fixes
* rebuild vue
* update files
* sidenav start
* make getRef a utility method
* tweak
* add return type
* finish converting side-nav directive
* starting on reporting menu conversion
* remove unused properties
* convert reporting pages service
* migrate report metadata store
* remove angularjs files
* migrating reporting pages store
* make store adapters more immutable
* get service adapters to work
* fix a UI test
* another html fix
* migrate most of reporting menu directive and model
* Use themed font family for input forms to override materialize.css styling
* rebuild vue
* add a missing div
* ui test fixes
* update styling
* get to build
* get to load in the UI w/o error
* clone result of functions
* fix compile issue
* Updating version to 4.6.0
* update expected screenshot
* add wait just in case travis is slow
* fix ordering bug
* add another wait
* rebuild vue
* css tweak
* fix some bugs and tests
* undo screenshot changes
* Menus test passing locally
* [Vue] date picker viewDate property is not kept up to date (#18385)
* viewDate ref is not kept up to date
* rebuild corehome
* reporting menu subcategory items are meant to be normal links
* update some screenshots
* use innerText instead of text() since angularjs maintains newlines in HTML that vue does not add
* trigger angularjs digest after ajaxhelper request
* rebuild vue
* update screenshots, fix bug in link generation in reporting menu and allow syncing multiple screenshot regexes at a time
* undo box-shadow change for UI tests
* fix more issues & update more tests
* update some screenshots
* fix some tests
* built vue files
* fix field array title
* apply some pr feedback
* apply more pr feedback
* another fix
* tweak
* fix ng-change not executed before ng-model
* fix another set of issues
* fix another issue
* rebuild vue
* better ng-change/ng-model fix
* update some screenshots
* rebuild vue
* remove some TODOs
* initiate initial ng-change ONLY for site selectors where this behavior applies
* built vue files
* fix function signature
* fix vue warning
* fix ajax request race condition
* rebuild vue
* add new notification type "help" so the help notification is not cleared when clearing transient notifications
* fix some bugs and tests
* update screenshot
* update screenshot & fix a test
* allow using unminified jquery ui + fix bug in last fix
* add polyfill min.js
* update some screenshots and fix sanitization/escape issue
* update screenshots
* rebuild vue
* fix url location updating regression in MatomoUrl.updateLocation use
* submodule
* update screenshots and fix possible error in json parse
* built vue files
* Merge branch 'vue-period-selector-regression' into vue-reporting-menu
* rebuild vue
* use correct variable
* rebuild vue
* segment parameter can be undefined now for some reason
* fix ngmodel binding in siteselector adapter (for last time hopefully)
* the original site selector only set the first site to the first site in the initial sites query if there was only one site in the entire matomo instance
* fix sitesmanager ui test failure
* fix usersettings test failure
* rebuild vue
* more siteselector tweaks.
* another siteselector issue
* update screenshots
* update screenshot and try to fix random failure
* apply review feedback
* fix ngmodel render issue w/ extra nextTick()
* fix css
* fix test
* rebuild vue
* update screenshots
Co-authored-by: Matthieu Aubry <mattab@users.noreply.github.com>
Co-authored-by: Justin Velluppillai <justin@innocraft.com>
Co-authored-by: justinvelluppillai <justinvelluppillai@users.noreply.github.com>
Co-authored-by: sgiehl <stefan@matomo.org>
Diffstat (limited to 'plugins/SitesManager')
-rw-r--r-- | plugins/SitesManager/tests/UI/SitesManager_spec.js | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/plugins/SitesManager/tests/UI/SitesManager_spec.js b/plugins/SitesManager/tests/UI/SitesManager_spec.js index da2c0c211c..6ae5979163 100644 --- a/plugins/SitesManager/tests/UI/SitesManager_spec.js +++ b/plugins/SitesManager/tests/UI/SitesManager_spec.js @@ -13,12 +13,14 @@ describe("SitesManager", function () { var url = "?module=SitesManager&action=index&idSite=1&period=day&date=yesterday&showaddsite=false"; - async function assertScreenshotEquals(screenshotName, test) + async function assertScreenshotEquals(screenshotName, test, selectorToWaitFor = ".enrichedHeadline:contains(Manage Measurables)") { await test(); await page.waitForNetworkIdle(); const pageWrap = await page.$('#content'); - await page.waitFor(() => !!$('.enrichedHeadline:contains("Manage Measurables")').length); + await page.waitForFunction((s) => { + return !!$(s).length; + }, {}, selectorToWaitFor); expect(await pageWrap.screenshot()).to.matchImage(screenshotName); } @@ -86,7 +88,7 @@ describe("SitesManager", function () { await page.evaluate(function () { $('.form-help:contains(UTC time is)').hide(); }); - }); + }, "h2:contains(Global websites settings)"); }); it("should be able to open and edit a site directly based on url parameter", async function() { |