Source/WebCore/ChangeLog

 12012-12-28 Alexis Menard <alexis@webkit.org>
 2
 3 Querying transition-timing-function value on the computed style does not return keywords when it should.
 4 https://bugs.webkit.org/show_bug.cgi?id=105442
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 http://www.w3.org/TR/css3-transitions/#transition-timing-function-property
 9 contains a set of predefined timing functions which under the hood are
 10 implemented using cubic-bezier but it's an implementation detail that
 11 should not be exposed. It seems to be more clear to return a CSS
 12 keyword rather than the cubic-bezier form when querying the value of
 13 the property on the computed style. In fact the spec even say that for
 14 example the initial value is "ease" and not cubic-bezier(0.25, 0.1,
 15 0.25, 1.0). We could also imagine that in the future these predefined
 16 values could contain other values not represented by a cubic-bezier
 17 form. This behavior also align with the "linear" keyword which return
 18 "linear" rather than cubic-bezier(0.0, 0.0, 1.0, 1.0).
 19
 20 Test: transitions/transitions-parsing.html has been updated to cover
 21 the new behavior as well as making sure that an explicitly set value of
 22 cubic-bezier(0.25, 0.1, 0.25, 1.0) does not return "ease" but the
 23 cubic-bezier() form.
 24
 25 * css/CSSComputedStyleDeclaration.cpp:
 26 (WebCore::createAnimationValue):
 27 (WebCore):
 28 (WebCore::getTimingFunctionValue):
 29 * css/CSSToStyleMap.cpp:
 30 (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
 31 * platform/animation/TimingFunction.h:
 32 (WebCore::CubicBezierTimingFunction::create):
 33 (WebCore::CubicBezierTimingFunction::operator==):
 34 (WebCore::CubicBezierTimingFunction::cubicBezierTimingFunctionType):
 35 (CubicBezierTimingFunction):
 36 (WebCore::CubicBezierTimingFunction::CubicBezierTimingFunction):
 37
1382012-12-28 Philippe Normand <pnormand@igalia.com>
239
340 [GTK] Some GStreamer-related files don't need to be in libWebCoreGTK

Source/WebKit2/ChangeLog

 12012-12-28 Alexis Menard <alexis@webkit.org>
 2
 3 Querying transition-timing-function value on the computed style does not return keywords when it should.
 4 https://bugs.webkit.org/show_bug.cgi?id=105442
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 Update the code to pass the animations from one process to another as
 9 the constructor of TimingFunction changed to take an extra parameter
 10 holding the type of the cubic-bezier form.
 11
 12 * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
 13 (CoreIPC::encodeTimingFunction):
 14 (CoreIPC::decodeTimingFunction):
 15
1162012-12-27 Sam Weinig <sam@webkit.org>
217
318 Convert a few other WebProcess managers to be WebProcessSupplements

Source/WebCore/css/CSSComputedStyleDeclaration.cpp

@@static PassRefPtr<CSSValue> getDurationValue(const AnimationList* animList)
10741074 return list.release();
10751075}
10761076
 1077static PassRefPtr<CSSValue> createAnimationValue(const TimingFunction* tf)
 1078{
 1079 if (tf->isCubicBezierTimingFunction()) {
 1080 const CubicBezierTimingFunction* ctf = static_cast<const CubicBezierTimingFunction*>(tf);
 1081 if (ctf->cubicBezierTimingFunctionType() != CubicBezierTimingFunction::Custom) {
 1082 CSSValueID id = CSSValueInvalid;
 1083 switch (ctf->cubicBezierTimingFunctionType()) {
 1084 case CubicBezierTimingFunction::Ease:
 1085 id = CSSValueEase;
 1086 break;
 1087 case CubicBezierTimingFunction::EaseIn:
 1088 id = CSSValueEaseIn;
 1089 break;
 1090 case CubicBezierTimingFunction::EaseOut:
 1091 id = CSSValueEaseOut;
 1092 break;
 1093 case CubicBezierTimingFunction::EaseInOut:
 1094 id = CSSValueEaseInOut;
 1095 break;
 1096 default:
 1097 ASSERT_NOT_REACHED();
 1098 return 0;
 1099 }
 1100 return cssValuePool().createIdentifierValue(id);
 1101 }
 1102 return CSSCubicBezierTimingFunctionValue::create(ctf->x1(), ctf->y1(), ctf->x2(), ctf->y2());
 1103 }
 1104 if (tf->isStepsTimingFunction()) {
 1105 const StepsTimingFunction* stf = static_cast<const StepsTimingFunction*>(tf);
 1106 return CSSStepsTimingFunctionValue::create(stf->numberOfSteps(), stf->stepAtStart());
 1107 }
 1108 return CSSLinearTimingFunctionValue::create();
 1109}
 1110
10771111static PassRefPtr<CSSValue> getTimingFunctionValue(const AnimationList* animList)
10781112{
10791113 RefPtr<CSSValueList> list = CSSValueList::createCommaSeparated();
10801114 if (animList) {
10811115 for (size_t i = 0; i < animList->size(); ++i) {
10821116 const TimingFunction* tf = animList->animation(i)->timingFunction().get();
1083  if (tf->isCubicBezierTimingFunction()) {
1084  const CubicBezierTimingFunction* ctf = static_cast<const CubicBezierTimingFunction*>(tf);
1085  list->append(CSSCubicBezierTimingFunctionValue::create(ctf->x1(), ctf->y1(), ctf->x2(), ctf->y2()));
1086  } else if (tf->isStepsTimingFunction()) {
1087  const StepsTimingFunction* stf = static_cast<const StepsTimingFunction*>(tf);
1088  list->append(CSSStepsTimingFunctionValue::create(stf->numberOfSteps(), stf->stepAtStart()));
1089  } else {
1090  list->append(CSSLinearTimingFunctionValue::create());
1091  }
 1117 list->append(createAnimationValue(tf));
10921118 }
10931119 } else {
10941120 // Note that initialAnimationTimingFunction() is used for both transitions and animations
10951121 RefPtr<TimingFunction> tf = Animation::initialAnimationTimingFunction();
1096  if (tf->isCubicBezierTimingFunction()) {
1097  const CubicBezierTimingFunction* ctf = static_cast<const CubicBezierTimingFunction*>(tf.get());
1098  list->append(CSSCubicBezierTimingFunctionValue::create(ctf->x1(), ctf->y1(), ctf->x2(), ctf->y2()));
1099  } else if (tf->isStepsTimingFunction()) {
1100  const StepsTimingFunction* stf = static_cast<const StepsTimingFunction*>(tf.get());
1101  list->append(CSSStepsTimingFunctionValue::create(stf->numberOfSteps(), stf->stepAtStart()));
1102  } else {
1103  list->append(CSSLinearTimingFunctionValue::create());
1104  }
 1122 list->append(createAnimationValue(tf.get()));
11051123 }
11061124 return list.release();
11071125}

Source/WebCore/css/CSSToStyleMap.cpp

@@void CSSToStyleMap::mapAnimationTimingFunction(Animation* animation, CSSValue* v
457457 animation->setTimingFunction(CubicBezierTimingFunction::create());
458458 break;
459459 case CSSValueEaseIn:
460  animation->setTimingFunction(CubicBezierTimingFunction::create(0.42, 0.0, 1.0, 1.0));
 460 animation->setTimingFunction(CubicBezierTimingFunction::create(CubicBezierTimingFunction::EaseIn, 0.42, 0.0, 1.0, 1.0));
461461 break;
462462 case CSSValueEaseOut:
463  animation->setTimingFunction(CubicBezierTimingFunction::create(0.0, 0.0, 0.58, 1.0));
 463 animation->setTimingFunction(CubicBezierTimingFunction::create(CubicBezierTimingFunction::EaseOut, 0.0, 0.0, 0.58, 1.0));
464464 break;
465465 case CSSValueEaseInOut:
466  animation->setTimingFunction(CubicBezierTimingFunction::create(0.42, 0.0, 0.58, 1.0));
 466 animation->setTimingFunction(CubicBezierTimingFunction::create(CubicBezierTimingFunction::EaseInOut, 0.42, 0.0, 0.58, 1.0));
467467 break;
468468 case CSSValueStepStart:
469469 animation->setTimingFunction(StepsTimingFunction::create(1, true));

@@void CSSToStyleMap::mapAnimationTimingFunction(Animation* animation, CSSValue* v
477477
478478 if (value->isCubicBezierTimingFunctionValue()) {
479479 CSSCubicBezierTimingFunctionValue* cubicTimingFunction = static_cast<CSSCubicBezierTimingFunctionValue*>(value);
480  animation->setTimingFunction(CubicBezierTimingFunction::create(cubicTimingFunction->x1(), cubicTimingFunction->y1(), cubicTimingFunction->x2(), cubicTimingFunction->y2()));
 480 animation->setTimingFunction(CubicBezierTimingFunction::create(CubicBezierTimingFunction::Custom, cubicTimingFunction->x1(), cubicTimingFunction->y1(), cubicTimingFunction->x2(), cubicTimingFunction->y2()));
481481 } else if (value->isStepsTimingFunctionValue()) {
482482 CSSStepsTimingFunctionValue* stepsTimingFunction = static_cast<CSSStepsTimingFunctionValue*>(value);
483483 animation->setTimingFunction(StepsTimingFunction::create(stepsTimingFunction->numberOfSteps(), stepsTimingFunction->stepAtStart()));

Source/WebCore/platform/animation/TimingFunction.h

@@private:
7878
7979class CubicBezierTimingFunction : public TimingFunction {
8080public:
81  static PassRefPtr<CubicBezierTimingFunction> create(double x1, double y1, double x2, double y2)
 81 enum CubicBezierTimingFunctionType {
 82 Ease, EaseIn, EaseOut, EaseInOut, Custom
 83 };
 84
 85 static PassRefPtr<CubicBezierTimingFunction> create(CubicBezierTimingFunctionType type, double x1, double y1, double x2, double y2)
8286 {
83  return adoptRef(new CubicBezierTimingFunction(x1, y1, x2, y2));
 87 return adoptRef(new CubicBezierTimingFunction(type, x1, y1, x2, y2));
8488 }
8589
8690 static PassRefPtr<CubicBezierTimingFunction> create()

@@public:
9498 {
9599 if (other.isCubicBezierTimingFunction()) {
96100 const CubicBezierTimingFunction* ctf = static_cast<const CubicBezierTimingFunction*>(&other);
97  return m_x1 == ctf->m_x1 && m_y1 == ctf->m_y1 && m_x2 == ctf->m_x2 && m_y2 == ctf->m_y2;
 101 return m_x1 == ctf->m_x1 && m_y1 == ctf->m_y1 && m_x2 == ctf->m_x2 && m_y2 == ctf->m_y2 && m_cubicBezierTimingFunctionType == ctf->m_cubicBezierTimingFunctionType;
98102 }
99103 return false;
100104 }

@@public:
104108 double x2() const { return m_x2; }
105109 double y2() const { return m_y2; }
106110
 111 CubicBezierTimingFunctionType cubicBezierTimingFunctionType() const { return m_cubicBezierTimingFunctionType; }
 112
107113 static const CubicBezierTimingFunction* defaultTimingFunction()
108114 {
109115 static const CubicBezierTimingFunction* dtf = create().leakRef();

@@public:
111117 }
112118
113119private:
114  CubicBezierTimingFunction(double x1 = 0.25, double y1 = 0.1, double x2 = 0.25, double y2 = 1.0)
 120 explicit CubicBezierTimingFunction(CubicBezierTimingFunctionType type = Ease, double x1 = 0.25, double y1 = 0.1, double x2 = 0.25, double y2 = 1.0)
115121 : TimingFunction(CubicBezierFunction)
116122 , m_x1(x1)
117123 , m_y1(y1)
118124 , m_x2(x2)
119125 , m_y2(y2)
 126 , m_cubicBezierTimingFunctionType(type)
120127 {
121128 }
122129

@@private:
124131 double m_y1;
125132 double m_x2;
126133 double m_y2;
 134 CubicBezierTimingFunctionType m_cubicBezierTimingFunctionType;
127135};
128136
129137class StepsTimingFunction : public TimingFunction {

Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp

@@static void encodeTimingFunction(ArgumentEncoder& encoder, const TimingFunction*
555555 break;
556556 case TimingFunction::CubicBezierFunction: {
557557 const CubicBezierTimingFunction* cubic = static_cast<const CubicBezierTimingFunction*>(timingFunction);
 558 encoder.encodeEnum(cubic->cubicBezierTimingFunctionType());
558559 encoder << cubic->x1();
559560 encoder << cubic->y1();
560561 encoder << cubic->x2();

@@bool decodeTimingFunction(ArgumentDecoder* decoder, RefPtr<TimingFunction>& timi
585586 return true;
586587 case TimingFunction::CubicBezierFunction: {
587588 double x1, y1, x2, y2;
 589 CubicBezierTimingFunction::CubicBezierTimingFunctionType bezierType;
 590 if (!decoder->decodeEnum(bezierType))
 591 return false;
588592 if (!decoder->decodeDouble(x1))
589593 return false;
590594 if (!decoder->decodeDouble(y1))

@@bool decodeTimingFunction(ArgumentDecoder* decoder, RefPtr<TimingFunction>& timi
594598 if (!decoder->decodeDouble(y2))
595599 return false;
596600
597  timingFunction = CubicBezierTimingFunction::create(x1, y1, x2, y2);
 601 timingFunction = CubicBezierTimingFunction::create(bezierType, x1, y1, x2, y2);
598602 return true;
599603 }
600604 case TimingFunction::StepsFunction: {

LayoutTests/ChangeLog

 12012-12-28 Alexis Menard <alexis@webkit.org>
 2
 3 Querying transition-timing-function value on the computed style does not return keywords when it should.
 4 https://bugs.webkit.org/show_bug.cgi?id=105442
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 Update the tests to match the correct behavior of returning a keyword
 9 rather than a cubic-bezier() form when using predefined values for the
 10 transition-timing-function property.
 11
 12 * animations/animation-shorthand-name-order-expected.txt:
 13 * animations/animation-shorthand-name-order.html:
 14 * animations/animation-shorthand-removed.html:
 15 * animations/animation-shorthand.html:
 16 * animations/computed-style-expected.txt:
 17 * animations/computed-style.html:
 18 * fast/css/getComputedStyle/computed-style-expected.txt:
 19 * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
 20 * svg/css/getComputedStyle-basic-expected.txt:
 21 * transitions/inherit-other-props-expected.txt:
 22 * transitions/inherit-other-props.html:
 23 * transitions/transitions-parsing-expected.txt:
 24 * transitions/transitions-parsing.html:
 25
1262012-12-28 Sudarsana Nagineni <sudarsana.nagineni@intel.com>
227
328 Unreviewed EFL gardening.

LayoutTests/animations/animation-shorthand-name-order-expected.txt

11PASS Test 1: webkitAnimationName was test
22PASS Test 1: webkitAnimationDuration was 3s
3 PASS Test 1: webkitAnimationTimingFunction was cubic-bezier(0.25, 0.1, 0.25, 1)
 3PASS Test 1: webkitAnimationTimingFunction was ease
44PASS Test 1: webkitAnimationDelay was 0s
55PASS Test 1: webkitAnimationIterationCount was 1
66PASS Test 1: webkitAnimationDirection was normal
77PASS Test 1: webkitAnimationFillMode was none
88PASS Test 2: webkitAnimationName was test
99PASS Test 2: webkitAnimationDuration was 3s
10 PASS Test 2: webkitAnimationTimingFunction was cubic-bezier(0.25, 0.1, 0.25, 1)
 10PASS Test 2: webkitAnimationTimingFunction was ease
1111PASS Test 2: webkitAnimationDelay was 0s
1212PASS Test 2: webkitAnimationIterationCount was 1
1313PASS Test 2: webkitAnimationDirection was normal
1414PASS Test 2: webkitAnimationFillMode was none
1515PASS Test 3: webkitAnimationName was test
1616PASS Test 3: webkitAnimationDuration was 3s
17 PASS Test 3: webkitAnimationTimingFunction was cubic-bezier(0.25, 0.1, 0.25, 1)
 17PASS Test 3: webkitAnimationTimingFunction was ease
1818PASS Test 3: webkitAnimationDelay was 0s
1919PASS Test 3: webkitAnimationIterationCount was 1
2020PASS Test 3: webkitAnimationDirection was normal
2121PASS Test 3: webkitAnimationFillMode was forwards
2222PASS Test 4: webkitAnimationName was test
2323PASS Test 4: webkitAnimationDuration was 3s
24 PASS Test 4: webkitAnimationTimingFunction was cubic-bezier(0.25, 0.1, 0.25, 1)
 24PASS Test 4: webkitAnimationTimingFunction was ease
2525PASS Test 4: webkitAnimationDelay was 0s
2626PASS Test 4: webkitAnimationIterationCount was 1
2727PASS Test 4: webkitAnimationDirection was normal

@@PASS Test 9: webkitAnimationDirection was alternate
6363PASS Test 9: webkitAnimationFillMode was none
6464PASS Test 10: webkitAnimationName was linear
6565PASS Test 10: webkitAnimationDuration was 3s
66 PASS Test 10: webkitAnimationTimingFunction was cubic-bezier(0.25, 0.1, 0.25, 1)
 66PASS Test 10: webkitAnimationTimingFunction was ease
6767PASS Test 10: webkitAnimationDelay was 4s
6868PASS Test 10: webkitAnimationIterationCount was infinite
6969PASS Test 10: webkitAnimationDirection was alternate

LayoutTests/animations/animation-shorthand-name-order.html

@@const TEST_INPUTS = [
7272];
7373
7474const EXPECTED_VALUES = [
75  ["test", "3s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "0s", "1", "normal", "none"],
76  ["test", "3s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "0s", "1", "normal", "none"],
77  ["test", "3s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "0s", "1", "normal", "forwards"],
78  ["test", "3s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "0s", "1", "normal", "forwards"],
 75 ["test", "3s", "ease", "0s", "1", "normal", "none"],
 76 ["test", "3s", "ease", "0s", "1", "normal", "none"],
 77 ["test", "3s", "ease", "0s", "1", "normal", "forwards"],
 78 ["test", "3s", "ease", "0s", "1", "normal", "forwards"],
7979 ["test", "3s", "linear", "0s", "1", "normal", "forwards"],
8080 ["test", "3s", "linear", "0s", "1", "normal", "forwards"],
8181 ["test", "3s", "linear", "4s", "5", "normal", "forwards"],
8282 ["test", "3s", "linear", "4s", "infinite", "alternate", "forwards"],
8383 ["test", "3s", "linear", "4s", "infinite", "alternate", "none"],
84  ["linear", "3s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "4s", "infinite", "alternate", "forwards"],
 84 ["linear", "3s", "ease", "4s", "infinite", "alternate", "forwards"],
8585];
8686
8787var numTestsComplete = 0;

LayoutTests/animations/animation-shorthand-removed.html

5151 values: [ "anim1", "10s", "linear", "5s", "infinite", "alternate", "forwards" ]
5252 }
5353 ];
54  const kExpectedResults = [ "none", "0s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "0s", "1", "normal", "none" ];
 54 const kExpectedResults = [ "none", "0s", "ease", "0s", "1", "normal", "none" ];
5555
5656 function start() {
5757 kElements.forEach(function(curEl) {

LayoutTests/animations/animation-shorthand.html

5454 "webkitAnimationFillMode"
5555 ];
5656 const kExpectedResults = [
57  { id: 'a', values: [ "none", "0s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "0s", "1", "normal", "none" ] },
58  { id: 'b', values: [ "none", "0s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "0s", "1", "normal", "none" ] },
59  { id: 'c', values: [ "anim1", "10s", "cubic-bezier(0.25, 0.1, 0.25, 1)", "0s", "1", "normal", "none" ] },
 57 { id: 'a', values: [ "none", "0s", "ease", "0s", "1", "normal", "none" ] },
 58 { id: 'b', values: [ "none", "0s", "ease", "0s", "1", "normal", "none" ] },
 59 { id: 'c', values: [ "anim1", "10s", "ease", "0s", "1", "normal", "none" ] },
6060 { id: 'd', values: [ "anim1", "10s", "linear", "0s", "1", "normal", "none" ] },
6161 { id: 'e', values: [ "anim1", "10s", "linear", "5s", "1", "normal", "none" ] },
6262 { id: 'f', values: [ "anim1", "10s", "linear", "5s", "3", "normal", "none" ] },
6363 { id: 'g', values: [ "anim1", "10s", "linear", "5s", "infinite", "alternate", "none" ] },
6464 { id: 'h', values: [ "anim1", "10s", "linear", "5s", "infinite", "alternate", "forwards" ] },
6565 { id: 'i', values: [ "anim1", "10s", "linear", "0s", "1", "normal", "none" ] },
66  { id: 'j', values: [ "anim1, anim2, anim3", "10s, 3s, 5s", "linear, cubic-bezier(0.25, 0.1, 0.25, 1), cubic-bezier(0.25, 0.1, 0.25, 1)", "0s, 0s, 0s", "infinite, 1, 1", "normal, normal, normal", "backwards, none, both" ] }
 66 { id: 'j', values: [ "anim1, anim2, anim3", "10s, 3s, 5s", "linear, ease, ease", "0s, 0s, 0s", "infinite, 1, 1", "normal, normal, normal", "backwards, none, both" ] }
6767 ];
6868
6969 function start()

LayoutTests/animations/computed-style-expected.txt

@@PASS test2Style.webkitAnimationFillMode is 'forwards, both'
1313PASS test1Style.webkitAnimationIterationCount is '10'
1414PASS test2Style.webkitAnimationIterationCount is '10, infinite'
1515PASS test1Style.webkitAnimationTimingFunction is 'linear'
16 PASS test2Style.webkitAnimationTimingFunction is 'linear, cubic-bezier(0.42, 0, 0.58, 1)'
 16PASS test2Style.webkitAnimationTimingFunction is 'linear, ease-in-out'
1717PASS test3Style.webkitAnimationTimingFunction is 'steps(1, start), steps(1, end), steps(5, end)'
1818PASS test1Style.webkitAnimationDirection is 'normal'
1919PASS test2Style.webkitAnimationDirection is 'normal, alternate'

LayoutTests/animations/computed-style.html

@@shouldBe("test1Style.webkitAnimationIterationCount", "'10'");
8080shouldBe("test2Style.webkitAnimationIterationCount", "'10, infinite'");
8181
8282shouldBe("test1Style.webkitAnimationTimingFunction", "'linear'");
83 shouldBe("test2Style.webkitAnimationTimingFunction", "'linear, cubic-bezier(0.42, 0, 0.58, 1)'");
 83shouldBe("test2Style.webkitAnimationTimingFunction", "'linear, ease-in-out'");
8484shouldBe("test3Style.webkitAnimationTimingFunction", "'steps(1, start), steps(1, end), steps(5, end)'");
8585
8686shouldBe("test1Style.webkitAnimationDirection", "'normal'");

LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt

@@zoom: 1;
109109-webkit-animation-iteration-count: 1;
110110-webkit-animation-name: none;
111111-webkit-animation-play-state: running;
112 -webkit-animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
 112-webkit-animation-timing-function: ease;
113113-webkit-appearance: none;
114114-webkit-backface-visibility: visible;
115115-webkit-background-clip: border-box;

@@zoom: 1;
208208-webkit-transition-delay: 0s;
209209-webkit-transition-duration: 0s;
210210-webkit-transition-property: all;
211 -webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
 211-webkit-transition-timing-function: ease;
212212-webkit-user-drag: auto;
213213-webkit-user-modify: read-only;
214214-webkit-user-select: text;

LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt

@@zoom: 1
108108-webkit-animation-iteration-count: 1
109109-webkit-animation-name: none
110110-webkit-animation-play-state: running
111 -webkit-animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1)
 111-webkit-animation-timing-function: ease
112112-webkit-appearance: none
113113-webkit-backface-visibility: visible
114114-webkit-background-clip: border-box

@@zoom: 1
207207-webkit-transition-delay: 0s
208208-webkit-transition-duration: 0s
209209-webkit-transition-property: all
210 -webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1)
 210-webkit-transition-timing-function: ease
211211-webkit-user-drag: auto
212212-webkit-user-modify: read-only
213213-webkit-user-select: text

LayoutTests/svg/css/getComputedStyle-basic-expected.txt

@@rect: style.getPropertyValue(-webkit-animation-name) : none
216216rect: style.getPropertyCSSValue(-webkit-animation-name) : [object CSSValueList]
217217rect: style.getPropertyValue(-webkit-animation-play-state) : running
218218rect: style.getPropertyCSSValue(-webkit-animation-play-state) : [object CSSValueList]
219 rect: style.getPropertyValue(-webkit-animation-timing-function) : cubic-bezier(0.25, 0.1, 0.25, 1)
 219rect: style.getPropertyValue(-webkit-animation-timing-function) : ease
220220rect: style.getPropertyCSSValue(-webkit-animation-timing-function) : [object CSSValueList]
221221rect: style.getPropertyValue(-webkit-appearance) : none
222222rect: style.getPropertyCSSValue(-webkit-appearance) : [object CSSPrimitiveValue]

@@rect: style.getPropertyValue(-webkit-transition-duration) : 0s
414414rect: style.getPropertyCSSValue(-webkit-transition-duration) : [object CSSValueList]
415415rect: style.getPropertyValue(-webkit-transition-property) : all
416416rect: style.getPropertyCSSValue(-webkit-transition-property) : [object CSSValueList]
417 rect: style.getPropertyValue(-webkit-transition-timing-function) : cubic-bezier(0.25, 0.1, 0.25, 1)
 417rect: style.getPropertyValue(-webkit-transition-timing-function) : ease
418418rect: style.getPropertyCSSValue(-webkit-transition-timing-function) : [object CSSValueList]
419419rect: style.getPropertyValue(-webkit-user-drag) : auto
420420rect: style.getPropertyCSSValue(-webkit-user-drag) : [object CSSPrimitiveValue]

@@g: style.getPropertyValue(-webkit-animation-name) : none
716716g: style.getPropertyCSSValue(-webkit-animation-name) : [object CSSValueList]
717717g: style.getPropertyValue(-webkit-animation-play-state) : running
718718g: style.getPropertyCSSValue(-webkit-animation-play-state) : [object CSSValueList]
719 g: style.getPropertyValue(-webkit-animation-timing-function) : cubic-bezier(0.25, 0.1, 0.25, 1)
 719g: style.getPropertyValue(-webkit-animation-timing-function) : ease
720720g: style.getPropertyCSSValue(-webkit-animation-timing-function) : [object CSSValueList]
721721g: style.getPropertyValue(-webkit-appearance) : none
722722g: style.getPropertyCSSValue(-webkit-appearance) : [object CSSPrimitiveValue]

@@g: style.getPropertyValue(-webkit-transition-duration) : 0s
914914g: style.getPropertyCSSValue(-webkit-transition-duration) : [object CSSValueList]
915915g: style.getPropertyValue(-webkit-transition-property) : all
916916g: style.getPropertyCSSValue(-webkit-transition-property) : [object CSSValueList]
917 g: style.getPropertyValue(-webkit-transition-timing-function) : cubic-bezier(0.25, 0.1, 0.25, 1)
 917g: style.getPropertyValue(-webkit-transition-timing-function) : ease
918918g: style.getPropertyCSSValue(-webkit-transition-timing-function) : [object CSSValueList]
919919g: style.getPropertyValue(-webkit-user-drag) : auto
920920g: style.getPropertyCSSValue(-webkit-user-drag) : [object CSSPrimitiveValue]

LayoutTests/transitions/inherit-other-props-expected.txt

11PASS -- Box 1 computed transition property: all expected: all
22PASS -- Box 1 computed transition duration: 0s expected: 0s
3 PASS -- Box 1 computed transition timing function: cubic-bezier(0.25, 0.1, 0.25, 1) expected: cubic-bezier(0.25, 0.1, 0.25, 1)
 3PASS -- Box 1 computed transition timing function: ease expected: ease
44PASS -- Box 2 computed transition property: left expected: left
55PASS -- Box 2 computed transition duration: 2s expected: 2s
66PASS -- Box 2 computed transition timing function: linear expected: linear

@@PASS -- Box 5 computed transition duration: 2s expected: 2s
1515PASS -- Box 5 computed transition timing function: linear expected: linear
1616PASS -- Box 6 computed transition property: all expected: all
1717PASS -- Box 6 computed transition duration: 0s expected: 0s
18 PASS -- Box 6 computed transition timing function: cubic-bezier(0.25, 0.1, 0.25, 1) expected: cubic-bezier(0.25, 0.1, 0.25, 1)
 18PASS -- Box 6 computed transition timing function: ease expected: ease
1919

LayoutTests/transitions/inherit-other-props.html

4545 ];
4646
4747 var kExpectedTimingFunction = [
48  'cubic-bezier(0.25, 0.1, 0.25, 1)', /* box1 */
 48 'ease', /* box1 */
4949 'linear', /* box2 */
5050 'linear', /* box3 */
5151 'linear', /* box4 */ /* inherits from box3 */
5252 'linear', /* box5 */
53  'cubic-bezier(0.25, 0.1, 0.25, 1)', /* box6 */ /* does NOT inherit */
 53 'ease', /* box6 */ /* does NOT inherit */
5454 ];
5555
5656 var result = '';

LayoutTests/transitions/transitions-parsing-expected.txt

@@PASS computedStyle.transitionDuration is '0s'
9696PASS style.webkitTransitionDuration is ''
9797PASS computedStyle.webkitTransitionDuration is '0s'
9898Valid transition-timing-function values.
99 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
100 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 99PASS computedStyle.transitionTimingFunction is 'ease'
 100PASS computedStyle.webkitTransitionTimingFunction is 'ease'
 101PASS style.transitionTimingFunction is 'linear'
 102PASS computedStyle.transitionTimingFunction is 'linear'
 103PASS style.webkitTransitionTimingFunction is 'linear'
 104PASS computedStyle.webkitTransitionTimingFunction is 'linear'
101105PASS style.transitionTimingFunction is 'ease'
102 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 106PASS computedStyle.transitionTimingFunction is 'ease'
103107PASS style.webkitTransitionTimingFunction is 'ease'
104 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 108PASS computedStyle.webkitTransitionTimingFunction is 'ease'
105109PASS style.transitionTimingFunction is 'ease-in'
106 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.42, 0, 1, 1)'
 110PASS computedStyle.transitionTimingFunction is 'ease-in'
107111PASS style.webkitTransitionTimingFunction is 'ease-in'
108 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.42, 0, 1, 1)'
 112PASS computedStyle.webkitTransitionTimingFunction is 'ease-in'
109113PASS style.transitionTimingFunction is 'ease-out'
110 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0, 0, 0.58, 1)'
 114PASS computedStyle.transitionTimingFunction is 'ease-out'
111115PASS style.webkitTransitionTimingFunction is 'ease-out'
112 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0, 0, 0.58, 1)'
 116PASS computedStyle.webkitTransitionTimingFunction is 'ease-out'
113117PASS style.transitionTimingFunction is 'ease-in-out'
114 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.42, 0, 0.58, 1)'
 118PASS computedStyle.transitionTimingFunction is 'ease-in-out'
115119PASS style.webkitTransitionTimingFunction is 'ease-in-out'
116 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.42, 0, 0.58, 1)'
 120PASS computedStyle.webkitTransitionTimingFunction is 'ease-in-out'
 121PASS style.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 122PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 123PASS style.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 124PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
117125PASS style.transitionTimingFunction is 'cubic-bezier(0.1, 0, 0.23, 0.4)'
118126PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.1, 0, 0.23, 0.4)'
119127PASS style.webkitTransitionTimingFunction is 'cubic-bezier(0.1, 0, 0.23, 0.4)'

@@PASS computedStyle.transitionTimingFunction is 'steps(5, start)'
151159PASS style.webkitTransitionTimingFunction is 'steps(5, start)'
152160PASS computedStyle.webkitTransitionTimingFunction is 'steps(5, start)'
153161PASS style.transitionTimingFunction is 'ease-in-out, ease-in'
154 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.42, 0, 0.58, 1), cubic-bezier(0.42, 0, 1, 1)'
 162PASS computedStyle.transitionTimingFunction is 'ease-in-out, ease-in'
155163PASS style.webkitTransitionTimingFunction is 'ease-in-out, ease-in'
156 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.42, 0, 0.58, 1), cubic-bezier(0.42, 0, 1, 1)'
 164PASS computedStyle.webkitTransitionTimingFunction is 'ease-in-out, ease-in'
157165PASS style.transitionTimingFunction is 'ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)'
158 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.42, 0, 0.58, 1), cubic-bezier(0.1, 0, 0.23, 0.4)'
 166PASS computedStyle.transitionTimingFunction is 'ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)'
159167PASS style.webkitTransitionTimingFunction is 'ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)'
160 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.42, 0, 0.58, 1), cubic-bezier(0.1, 0, 0.23, 0.4)'
 168PASS computedStyle.webkitTransitionTimingFunction is 'ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)'
161169PASS style.transitionTimingFunction is 'steps(3, start), ease-in-out'
162 PASS computedStyle.transitionTimingFunction is 'steps(3, start), cubic-bezier(0.42, 0, 0.58, 1)'
 170PASS computedStyle.transitionTimingFunction is 'steps(3, start), ease-in-out'
163171PASS style.webkitTransitionTimingFunction is 'steps(3, start), ease-in-out'
164 PASS computedStyle.webkitTransitionTimingFunction is 'steps(3, start), cubic-bezier(0.42, 0, 0.58, 1)'
 172PASS computedStyle.webkitTransitionTimingFunction is 'steps(3, start), ease-in-out'
165173Invalid transition-timing-function values.
166174PASS style.transitionTimingFunction is ''
167 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 175PASS computedStyle.transitionTimingFunction is 'ease'
168176PASS style.webkitTransitionTimingFunction is ''
169 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 177PASS computedStyle.webkitTransitionTimingFunction is 'ease'
170178PASS style.transitionTimingFunction is ''
171 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 179PASS computedStyle.transitionTimingFunction is 'ease'
172180PASS style.webkitTransitionTimingFunction is ''
173 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 181PASS computedStyle.webkitTransitionTimingFunction is 'ease'
174182PASS style.transitionTimingFunction is ''
175 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 183PASS computedStyle.transitionTimingFunction is 'ease'
176184PASS style.webkitTransitionTimingFunction is ''
177 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 185PASS computedStyle.webkitTransitionTimingFunction is 'ease'
178186PASS style.transitionTimingFunction is ''
179 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 187PASS computedStyle.transitionTimingFunction is 'ease'
180188PASS style.webkitTransitionTimingFunction is ''
181 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 189PASS computedStyle.webkitTransitionTimingFunction is 'ease'
182190PASS style.transitionTimingFunction is ''
183 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 191PASS computedStyle.transitionTimingFunction is 'ease'
184192PASS style.webkitTransitionTimingFunction is ''
185 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 193PASS computedStyle.webkitTransitionTimingFunction is 'ease'
186194PASS style.transitionTimingFunction is ''
187 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 195PASS computedStyle.transitionTimingFunction is 'ease'
188196PASS style.webkitTransitionTimingFunction is ''
189 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 197PASS computedStyle.webkitTransitionTimingFunction is 'ease'
190198PASS style.transitionTimingFunction is ''
191 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 199PASS computedStyle.transitionTimingFunction is 'ease'
192200PASS style.webkitTransitionTimingFunction is ''
193 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 201PASS computedStyle.webkitTransitionTimingFunction is 'ease'
194202PASS style.transitionTimingFunction is ''
195 PASS computedStyle.transitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 203PASS computedStyle.transitionTimingFunction is 'ease'
196204PASS style.webkitTransitionTimingFunction is ''
197 PASS computedStyle.webkitTransitionTimingFunction is 'cubic-bezier(0.25, 0.1, 0.25, 1)'
 205PASS computedStyle.webkitTransitionTimingFunction is 'ease'
198206Valid transition-delay values.
199207PASS computedStyle.transitionDelay is '0s'
200208PASS computedStyle.webkitTransitionDelay is '0s'

LayoutTests/transitions/transitions-parsing.html

@@shouldBe("computedStyle.webkitTransitionDuration", "'0s'");
199199
200200debug("Valid transition-timing-function values.");
201201// Initial test.
202 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
203 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 202shouldBe("computedStyle.transitionTimingFunction", "'ease'");
 203shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
204204
205 // Tracked by https://bugs.webkit.org/show_bug.cgi?id=105442.
206 /*style.transitionTimingFunction = "linear";
 205style.transitionTimingFunction = "linear";
207206shouldBe("style.transitionTimingFunction", "'linear'");
208 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0, 0, 1, 1)'");
 207shouldBe("computedStyle.transitionTimingFunction", "'linear'");
209208shouldBe("style.webkitTransitionTimingFunction", "'linear'");
210 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0, 0, 1, 1)'");*/
 209shouldBe("computedStyle.webkitTransitionTimingFunction", "'linear'");
211210
212211style.transitionTimingFunction = "ease";
213212shouldBe("style.transitionTimingFunction", "'ease'");
214 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 213shouldBe("computedStyle.transitionTimingFunction", "'ease'");
215214shouldBe("style.webkitTransitionTimingFunction", "'ease'");
216 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 215shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
217216
218217style.transitionTimingFunction = "ease-in";
219218shouldBe("style.transitionTimingFunction", "'ease-in'");
220 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.42, 0, 1, 1)'");
 219shouldBe("computedStyle.transitionTimingFunction", "'ease-in'");
221220shouldBe("style.webkitTransitionTimingFunction", "'ease-in'");
222 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.42, 0, 1, 1)'");
 221shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease-in'");
223222
224223style.transitionTimingFunction = "ease-out";
225224shouldBe("style.transitionTimingFunction", "'ease-out'");
226 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0, 0, 0.58, 1)'");
 225shouldBe("computedStyle.transitionTimingFunction", "'ease-out'");
227226shouldBe("style.webkitTransitionTimingFunction", "'ease-out'");
228 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0, 0, 0.58, 1)'");
 227shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease-out'");
229228
230229style.transitionTimingFunction = "ease-in-out";
231230shouldBe("style.transitionTimingFunction", "'ease-in-out'");
232 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.42, 0, 0.58, 1)'");
 231shouldBe("computedStyle.transitionTimingFunction", "'ease-in-out'");
233232shouldBe("style.webkitTransitionTimingFunction", "'ease-in-out'");
234 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.42, 0, 0.58, 1)'");
 233shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease-in-out'");
 234
 235style.transitionTimingFunction = "cubic-bezier(0.25, 0.1, 0.25, 1)";
 236shouldBe("style.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 237shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 238shouldBe("style.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 239shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
235240
236241style.transitionTimingFunction = "cubic-bezier(0.1, 0, 0.23, 0.4)";
237242shouldBe("style.transitionTimingFunction", "'cubic-bezier(0.1, 0, 0.23, 0.4)'");

@@style.transitionProperty = "opacity, width";
291296
292297style.transitionTimingFunction = "ease-in-out, ease-in";
293298shouldBe("style.transitionTimingFunction", "'ease-in-out, ease-in'");
294 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.42, 0, 0.58, 1), cubic-bezier(0.42, 0, 1, 1)'");
 299shouldBe("computedStyle.transitionTimingFunction", "'ease-in-out, ease-in'");
295300shouldBe("style.webkitTransitionTimingFunction", "'ease-in-out, ease-in'");
296 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.42, 0, 0.58, 1), cubic-bezier(0.42, 0, 1, 1)'");
 301shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease-in-out, ease-in'");
297302
298303style.transitionTimingFunction = "ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)";
299304shouldBe("style.transitionTimingFunction", "'ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)'");
300 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.42, 0, 0.58, 1), cubic-bezier(0.1, 0, 0.23, 0.4)'");
 305shouldBe("computedStyle.transitionTimingFunction", "'ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)'");
301306shouldBe("style.webkitTransitionTimingFunction", "'ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)'");
302 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.42, 0, 0.58, 1), cubic-bezier(0.1, 0, 0.23, 0.4)'");
 307shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease-in-out, cubic-bezier(0.1, 0, 0.23, 0.4)'");
303308
304309style.transitionTimingFunction = "steps(3, start), ease-in-out";
305310shouldBe("style.transitionTimingFunction", "'steps(3, start), ease-in-out'");
306 shouldBe("computedStyle.transitionTimingFunction", "'steps(3, start), cubic-bezier(0.42, 0, 0.58, 1)'");
 311shouldBe("computedStyle.transitionTimingFunction", "'steps(3, start), ease-in-out'");
307312shouldBe("style.webkitTransitionTimingFunction", "'steps(3, start), ease-in-out'");
308 shouldBe("computedStyle.webkitTransitionTimingFunction", "'steps(3, start), cubic-bezier(0.42, 0, 0.58, 1)'");
 313shouldBe("computedStyle.webkitTransitionTimingFunction", "'steps(3, start), ease-in-out'");
309314
310315debug("Invalid transition-timing-function values.");
311316style.transitionProperty = "";

@@style.transitionTimingFunction = "";
313318
314319style.transitionTimingFunction = "steps(5, 3)";
315320shouldBe("style.transitionTimingFunction", "''");
316 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 321shouldBe("computedStyle.transitionTimingFunction", "'ease'");
317322shouldBe("style.webkitTransitionTimingFunction", "''");
318 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 323shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
319324
320325style.transitionTimingFunction = "steps(-5, start)";
321326shouldBe("style.transitionTimingFunction", "''");
322 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 327shouldBe("computedStyle.transitionTimingFunction", "'ease'");
323328shouldBe("style.webkitTransitionTimingFunction", "''");
324 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 329shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
325330
326331style.transitionTimingFunction = "steps(5, start, end)";
327332shouldBe("style.transitionTimingFunction", "''");
328 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 333shouldBe("computedStyle.transitionTimingFunction", "'ease'");
329334shouldBe("style.webkitTransitionTimingFunction", "''");
330 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 335shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
331336
332337style.transitionTimingFunction = "step(5)";
333338shouldBe("style.transitionTimingFunction", "''");
334 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 339shouldBe("computedStyle.transitionTimingFunction", "'ease'");
335340shouldBe("style.webkitTransitionTimingFunction", "''");
336 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 341shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
337342
338343style.transitionTimingFunction = "red";
339344shouldBe("style.transitionTimingFunction", "''");
340 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 345shouldBe("computedStyle.transitionTimingFunction", "'ease'");
341346shouldBe("style.webkitTransitionTimingFunction", "''");
342 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 347shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
343348
344349style.transitionTimingFunction = "cubic-bezier(0.25, 0.1, 0.25)";
345350shouldBe("style.transitionTimingFunction", "''");
346 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 351shouldBe("computedStyle.transitionTimingFunction", "'ease'");
347352shouldBe("style.webkitTransitionTimingFunction", "''");
348 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 353shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
349354
350355style.transitionTimingFunction = "cubic-bezier(0.25, 0.1, 0.25, 1, 2)";
351356shouldBe("style.transitionTimingFunction", "''");
352 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 357shouldBe("computedStyle.transitionTimingFunction", "'ease'");
353358shouldBe("style.webkitTransitionTimingFunction", "''");
354 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 359shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
355360
356361style.transitionTimingFunction = "cubic-foo(0.25, 0.1, 0.25, 1)";
357362shouldBe("style.transitionTimingFunction", "''");
358 shouldBe("computedStyle.transitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 363shouldBe("computedStyle.transitionTimingFunction", "'ease'");
359364shouldBe("style.webkitTransitionTimingFunction", "''");
360 shouldBe("computedStyle.webkitTransitionTimingFunction", "'cubic-bezier(0.25, 0.1, 0.25, 1)'");
 365shouldBe("computedStyle.webkitTransitionTimingFunction", "'ease'");
361366
362367// Tracked by https://bugs.webkit.org/show_bug.cgi?id=105426.
363368/*style.transitionTimingFunction = "cubic-bezier(3, 0.1, 4, 1)";