gecko-dev/testing
Olli Pettay abf54817b9 Bug 1428246 - The attributeChangedCallback is fired twice for the *first* style attribute change, r=peterv
The idea with this patch is that style code will first call
InlineStyleDeclarationWillChange before style declaration has changed, and SetInlineStyleDeclaration once it has changed.

In order to be able to report old attribute value, InlineStyleDeclarationWillChange reads the value and also calls AttributeWillChange (so that DOMMutationObserser can grab the old value). Later SetInlineStyleDeclaration passes the old value to
SetAttrAndNotify so that mutation events and attributeChanged callbacks are handled correctly.

Because of performance, declaration can't be cloned for reading the old value. And that is why the recently-added callback is used to detect when declaration is about to change (bug 1466963 and followup bug 1468665).

To keep the expected existing behavior, even if declaration isn't changed, but just a new declaration was created (since there wasn't any), we need to still run all these
willchange/set calls. That is when the code has 'if (created)' checks.

Since there are several declaration implementation and only nsDOMCSSAttributeDeclaration needs the about-to-change callback, GetPropertyChangeClosure is the one to initialize the callback closure, and the struct which is then passes as data to the closure.

Apparently we lost mutation event testing on style attribute when the pref was added, so test_style_attr_listener.html is modified to test both pref values.

--HG--
extra : rebase_source : 9e605d43f22e650ac3912fbfb41abb8d5a2a0c8f
2018-06-26 12:54:00 +03:00
..
awsy Bug 1442361 - Track explicit memory usage in the base content memory test. r=mccr8 2018-06-21 14:57:12 -07:00
config Bug 1462934 - Update Android AVD configs to use archives with build.prop included; r=me,a=test-only 2018-06-08 14:26:49 -06:00
crashtest Bug 1470414 - Clean-up moz.build files for BUG_COMPONENT in testing/. r=ahal 2018-06-22 13:32:05 +02:00
firefox-ui Bug 1466071: Part 3: Test session save when quitting quickly. r=whimboo 2018-06-08 09:09:07 -07:00
geckodriver Bug 1406006 - Get well formatted commit hash and commit date when building geckodriver. r=ato 2018-06-17 09:38:23 +02:00
gtest Bug 1470414 - Clean-up moz.build files for BUG_COMPONENT in testing/. r=ahal 2018-06-22 13:32:05 +02:00
jsshell Bug 1465360 - add asm.js-apps shell benchmark to jsshell-bench. r=ahal 2018-06-19 08:58:20 -04:00
marionette Bug 1469307 - Pretty-print Attr objects in format.pprint. r=whimboo 2018-06-18 16:05:39 +01:00
mochitest Backed out changeset 638eb8a41245 (bug 1453751) for frequent linux debug e-10s failures on test_ext_webrequest_filter.html 2018-06-26 07:29:35 +03:00
modules Bug 1460092: Add ESLint rule to enforce use of ChromeUtils.generateQI. r=Gijs 2018-05-08 18:36:22 -07:00
mozbase Bug 1470177 - Ensure numeric comparison of timeout in adb.py; r=bc 2018-06-25 10:09:48 -06:00
mozharness Bug 1395540 - Part 6: Fix missing whitespace. r=me 2018-06-22 12:13:35 -07:00
profiles Backed out changeset 638eb8a41245 (bug 1453751) for frequent linux debug e-10s failures on test_ext_webrequest_filter.html 2018-06-26 07:29:35 +03:00
raptor Bug 1468535 - Port raptor-speedometer firefox to linux64; r=jmaher 2018-06-22 11:24:38 -04:00
runtimes Bug 1456092 - Update animationinspector paths in mochitest-*.runtimes.json;r=pbro 2018-04-23 14:42:28 +02:00
specialpowers Backed out 5 changesets (bug 1413098) for frequent failure in toolkit/content/tests/browser/browser_autoplay_policy_user_gestures.js on a CLOSED TREE 2018-05-31 15:21:15 +03:00
talos Bug 1456762 - Remove now unnecessary import-globals-from statements in html files. r=mossop 2018-06-16 08:21:33 +00:00
tools Bug 1470414 - Clean-up moz.build files for BUG_COMPONENT in testing/. r=ahal 2018-06-22 13:32:05 +02:00
tps Bug 1470122 - Bump mozinstall to 1.16.0; r=whimboo 2018-06-21 13:26:41 +01:00
web-platform Bug 1428246 - The attributeChangedCallback is fired twice for the *first* style attribute change, r=peterv 2018-06-26 12:54:00 +03:00
webdriver Bug 1441204 - Release webdriver crate 0.36.0. r=maja_zf 2018-06-14 13:28:33 -07:00
xpcshell Bug 1440022: disconnect push tests from actually running r=lina 2018-06-13 20:46:17 -04:00
README.txt
cppunittest.ini Bug 1468199 - remove references to b2g in test manifests r=jmaher 2018-06-12 14:57:00 +03:00
mach_commands.py Bug 1445975 - Add a basic mach command for running jsshell benchmarks, r=jmaher 2018-05-15 14:41:16 -04:00
moz.build Bug 1470414 - Clean-up moz.build files for BUG_COMPONENT in testing/. r=ahal 2018-06-22 13:32:05 +02:00
remotecppunittests.py
runcppunittests.py
testsuite-targets.mk Bug 1455872 - Build support for the new raptor performance framework; r=gps 2018-05-02 16:42:41 -04:00

README.txt

Common testing tools for mozilla codebase projects, test suite definitions
for automated test runs, tests that don't fit anywhere else, and other fun
stuff