Fix unit tests

This commit is contained in:
Manish Goregaokar 2017-10-31 14:17:48 -07:00
parent 5098948c0d
commit 6415294fd5
No known key found for this signature in database
GPG key ID: 3BBF4D3E2EF79F98
3 changed files with 58 additions and 58 deletions

View file

@ -12,8 +12,8 @@ use values::animated::ToAnimatedZero;
use values::computed::{Angle, Integer, Length, LengthOrPercentage, Number, Percentage}; use values::computed::{Angle, Integer, Length, LengthOrPercentage, Number, Percentage};
use values::computed::{LengthOrNumber, LengthOrPercentageOrNumber}; use values::computed::{LengthOrNumber, LengthOrPercentageOrNumber};
use values::generics::transform::{Matrix as GenericMatrix, Matrix3D as GenericMatrix3D}; use values::generics::transform::{Matrix as GenericMatrix, Matrix3D as GenericMatrix3D};
use values::generics::transform::TimingFunction as GenericTimingFunction;
use values::generics::transform::{Transform as GenericTransform, TransformOperation as GenericTransformOperation}; use values::generics::transform::{Transform as GenericTransform, TransformOperation as GenericTransformOperation};
use values::generics::transform::TimingFunction as GenericTimingFunction;
use values::generics::transform::TransformOrigin as GenericTransformOrigin; use values::generics::transform::TransformOrigin as GenericTransformOrigin;
/// A single operation in a computed CSS `transform` /// A single operation in a computed CSS `transform`

View file

@ -3,10 +3,9 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use cssparser::RGBA; use cssparser::RGBA;
use style::properties::longhands::transform::computed_value::ComputedOperation as TransformOperation;
use style::properties::longhands::transform::computed_value::T as TransformList;
use style::values::animated::{Animate, Procedure, ToAnimatedValue}; use style::values::animated::{Animate, Procedure, ToAnimatedValue};
use style::values::computed::Percentage; use style::values::computed::Percentage;
use style::values::generics::transform::{Transform, TransformOperation};
fn interpolate_rgba(from: RGBA, to: RGBA, progress: f64) -> RGBA { fn interpolate_rgba(from: RGBA, to: RGBA, progress: f64) -> RGBA {
let from = from.to_animated_value(); let from = from.to_animated_value();
@ -66,35 +65,35 @@ fn test_rgba_color_interepolation_out_of_range_clamped_2() {
fn test_transform_interpolation_on_translate() { fn test_transform_interpolation_on_translate() {
use style::values::computed::{CalcLengthOrPercentage, Length, LengthOrPercentage}; use style::values::computed::{CalcLengthOrPercentage, Length, LengthOrPercentage};
let from = TransformList(Some(vec![ let from = Transform(vec![
TransformOperation::Translate(LengthOrPercentage::Length(Length::new(0.)), TransformOperation::Translate3D(LengthOrPercentage::Length(Length::new(0.)),
LengthOrPercentage::Length(Length::new(100.)), LengthOrPercentage::Length(Length::new(100.)),
Length::new(25.))])); Length::new(25.))]);
let to = TransformList(Some(vec![ let to = Transform(vec![
TransformOperation::Translate(LengthOrPercentage::Length(Length::new(100.)), TransformOperation::Translate3D(LengthOrPercentage::Length(Length::new(100.)),
LengthOrPercentage::Length(Length::new(0.)), LengthOrPercentage::Length(Length::new(0.)),
Length::new(75.))])); Length::new(75.))]);
assert_eq!( assert_eq!(
from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(), from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(),
TransformList(Some(vec![TransformOperation::Translate( Transform(vec![TransformOperation::Translate3D(
LengthOrPercentage::Length(Length::new(50.)), LengthOrPercentage::Length(Length::new(50.)),
LengthOrPercentage::Length(Length::new(50.)), LengthOrPercentage::Length(Length::new(50.)),
Length::new(50.), Length::new(50.),
)])) )])
); );
let from = TransformList(Some(vec![TransformOperation::Translate( let from = Transform(vec![TransformOperation::Translate3D(
LengthOrPercentage::Percentage(Percentage(0.5)), LengthOrPercentage::Percentage(Percentage(0.5)),
LengthOrPercentage::Percentage(Percentage(1.0)), LengthOrPercentage::Percentage(Percentage(1.0)),
Length::new(25.), Length::new(25.),
)])); )]);
let to = TransformList(Some(vec![ let to = Transform(vec![
TransformOperation::Translate(LengthOrPercentage::Length(Length::new(100.)), TransformOperation::Translate3D(LengthOrPercentage::Length(Length::new(100.)),
LengthOrPercentage::Length(Length::new(50.)), LengthOrPercentage::Length(Length::new(50.)),
Length::new(75.))])); Length::new(75.))]);
assert_eq!( assert_eq!(
from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(), from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(),
TransformList(Some(vec![TransformOperation::Translate( Transform(vec![TransformOperation::Translate3D(
// calc(50px + 25%) // calc(50px + 25%)
LengthOrPercentage::Calc(CalcLengthOrPercentage::new(Length::new(50.), LengthOrPercentage::Calc(CalcLengthOrPercentage::new(Length::new(50.),
Some(Percentage(0.25)))), Some(Percentage(0.25)))),
@ -102,17 +101,17 @@ fn test_transform_interpolation_on_translate() {
LengthOrPercentage::Calc(CalcLengthOrPercentage::new(Length::new(25.), LengthOrPercentage::Calc(CalcLengthOrPercentage::new(Length::new(25.),
Some(Percentage(0.5)))), Some(Percentage(0.5)))),
Length::new(50.), Length::new(50.),
)])) )])
); );
} }
#[test] #[test]
fn test_transform_interpolation_on_scale() { fn test_transform_interpolation_on_scale() {
let from = TransformList(Some(vec![TransformOperation::Scale(1.0, 2.0, 1.0)])); let from = Transform(vec![TransformOperation::Scale3D(1.0, 2.0, 1.0)]);
let to = TransformList(Some(vec![TransformOperation::Scale(2.0, 4.0, 2.0)])); let to = Transform(vec![TransformOperation::Scale3D(2.0, 4.0, 2.0)]);
assert_eq!( assert_eq!(
from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(), from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(),
TransformList(Some(vec![TransformOperation::Scale(1.5, 3.0, 1.5)])) Transform(vec![TransformOperation::Scale3D(1.5, 3.0, 1.5)])
); );
} }
@ -120,15 +119,15 @@ fn test_transform_interpolation_on_scale() {
fn test_transform_interpolation_on_rotate() { fn test_transform_interpolation_on_rotate() {
use style::values::computed::Angle; use style::values::computed::Angle;
let from = TransformList(Some(vec![TransformOperation::Rotate(0.0, 0.0, 1.0, let from = Transform(vec![TransformOperation::Rotate3D(0.0, 0.0, 1.0,
Angle::from_radians(0.0))])); Angle::from_radians(0.0))]);
let to = TransformList(Some(vec![TransformOperation::Rotate(0.0, 0.0, 1.0, let to = Transform(vec![TransformOperation::Rotate3D(0.0, 0.0, 1.0,
Angle::from_radians(100.0))])); Angle::from_radians(100.0))]);
assert_eq!( assert_eq!(
from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(), from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(),
TransformList(Some(vec![ Transform(vec![
TransformOperation::Rotate(0.0, 0.0, 1.0, Angle::from_radians(50.0)), TransformOperation::Rotate3D(0.0, 0.0, 1.0, Angle::from_radians(50.0)),
])) ])
); );
} }
@ -136,16 +135,16 @@ fn test_transform_interpolation_on_rotate() {
fn test_transform_interpolation_on_skew() { fn test_transform_interpolation_on_skew() {
use style::values::computed::Angle; use style::values::computed::Angle;
let from = TransformList(Some(vec![TransformOperation::Skew(Angle::from_radians(0.0), let from = Transform(vec![TransformOperation::Skew(Angle::from_radians(0.0),
Angle::from_radians(100.0))])); Some(Angle::from_radians(100.0)))]);
let to = TransformList(Some(vec![TransformOperation::Skew(Angle::from_radians(100.0), let to = Transform(vec![TransformOperation::Skew(Angle::from_radians(100.0),
Angle::from_radians(0.0))])); Some(Angle::from_radians(0.0)))]);
assert_eq!( assert_eq!(
from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(), from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(),
TransformList(Some(vec![TransformOperation::Skew( Transform(vec![TransformOperation::Skew(
Angle::from_radians(50.0), Angle::from_radians(50.0),
Angle::from_radians(50.0), Some(Angle::from_radians(50.0)),
)])) )])
); );
} }
@ -153,18 +152,18 @@ fn test_transform_interpolation_on_skew() {
fn test_transform_interpolation_on_mismatched_lists() { fn test_transform_interpolation_on_mismatched_lists() {
use style::values::computed::{Angle, Length, LengthOrPercentage}; use style::values::computed::{Angle, Length, LengthOrPercentage};
let from = TransformList(Some(vec![TransformOperation::Rotate(0.0, 0.0, 1.0, let from = Transform(vec![TransformOperation::Rotate3D(0.0, 0.0, 1.0,
Angle::from_radians(100.0))])); Angle::from_radians(100.0))]);
let to = TransformList(Some(vec![ let to = Transform(vec![
TransformOperation::Translate(LengthOrPercentage::Length(Length::new(100.)), TransformOperation::Translate3D(LengthOrPercentage::Length(Length::new(100.)),
LengthOrPercentage::Length(Length::new(0.)), LengthOrPercentage::Length(Length::new(0.)),
Length::new(0.))])); Length::new(0.))]);
assert_eq!( assert_eq!(
from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(), from.animate(&to, Procedure::Interpolate { progress: 0.5 }).unwrap(),
TransformList(Some(vec![TransformOperation::InterpolateMatrix { Transform(vec![TransformOperation::InterpolateMatrix {
from_list: from.clone(), from_list: from.clone(),
to_list: to.clone(), to_list: to.clone(),
progress: Percentage(0.5), progress: Percentage(0.5),
}])) }])
); );
} }

View file

@ -725,8 +725,9 @@ mod shorthand_serialization {
mod transform { mod transform {
pub use super::*; pub use super::*;
use style::properties::longhands::transform::SpecifiedOperation; use style::values::generics::transform::TransformOperation;
use style::values::specified::{Angle, Number}; use style::values::specified::{Angle, Number};
use style::values::specified::transform::TransformOperation as SpecifiedOperation;
#[test] #[test]
fn should_serialize_none_correctly() { fn should_serialize_none_correctly() {
@ -736,41 +737,41 @@ mod shorthand_serialization {
} }
#[inline(always)] #[inline(always)]
fn validate_serialization<T: ToCss>(op: &T, expected_string: &'static str) { fn validate_serialization(op: &SpecifiedOperation, expected_string: &'static str) {
let css_string = op.to_css_string(); let css_string = op.to_css_string();
assert_eq!(css_string, expected_string); assert_eq!(css_string, expected_string);
} }
#[test] #[test]
fn transform_scale() { fn transform_scale() {
validate_serialization(&SpecifiedOperation::Scale(Number::new(1.3), None), "scale(1.3)"); validate_serialization(&TransformOperation::Scale(Number::new(1.3), None), "scale(1.3)");
validate_serialization( validate_serialization(
&SpecifiedOperation::Scale(Number::new(2.0), Some(Number::new(2.0))), &TransformOperation::Scale(Number::new(2.0), Some(Number::new(2.0))),
"scale(2, 2)"); "scale(2, 2)");
validate_serialization(&SpecifiedOperation::ScaleX(Number::new(42.0)), "scaleX(42)"); validate_serialization(&TransformOperation::ScaleX(Number::new(42.0)), "scaleX(42)");
validate_serialization(&SpecifiedOperation::ScaleY(Number::new(0.3)), "scaleY(0.3)"); validate_serialization(&TransformOperation::ScaleY(Number::new(0.3)), "scaleY(0.3)");
validate_serialization(&SpecifiedOperation::ScaleZ(Number::new(1.0)), "scaleZ(1)"); validate_serialization(&TransformOperation::ScaleZ(Number::new(1.0)), "scaleZ(1)");
validate_serialization( validate_serialization(
&SpecifiedOperation::Scale3D(Number::new(4.0), Number::new(5.0), Number::new(6.0)), &TransformOperation::Scale3D(Number::new(4.0), Number::new(5.0), Number::new(6.0)),
"scale3d(4, 5, 6)"); "scale3d(4, 5, 6)");
} }
#[test] #[test]
fn transform_skew() { fn transform_skew() {
validate_serialization( validate_serialization(
&SpecifiedOperation::Skew(Angle::from_degrees(42.3, false), None), &TransformOperation::Skew(Angle::from_degrees(42.3, false), None),
"skew(42.3deg)"); "skew(42.3deg)");
validate_serialization( validate_serialization(
&SpecifiedOperation::Skew(Angle::from_gradians(-50.0, false), Some(Angle::from_turns(0.73, false))), &TransformOperation::Skew(Angle::from_gradians(-50.0, false), Some(Angle::from_turns(0.73, false))),
"skew(-50grad, 0.73turn)"); "skew(-50grad, 0.73turn)");
validate_serialization( validate_serialization(
&SpecifiedOperation::SkewX(Angle::from_radians(0.31, false)), "skewX(0.31rad)"); &TransformOperation::SkewX(Angle::from_radians(0.31, false)), "skewX(0.31rad)");
} }
#[test] #[test]
fn transform_rotate() { fn transform_rotate() {
validate_serialization( validate_serialization(
&SpecifiedOperation::Rotate(Angle::from_turns(35.0, false)), &TransformOperation::Rotate(Angle::from_turns(35.0, false)),
"rotate(35turn)" "rotate(35turn)"
) )
} }