Skip to content

Fix AnimationDriverTests and align with android on rounding#51922

Closed
sammy-SC wants to merge 1 commit intofacebook:mainfrom
sammy-SC:export-D76337384
Closed

Fix AnimationDriverTests and align with android on rounding#51922
sammy-SC wants to merge 1 commit intofacebook:mainfrom
sammy-SC:export-D76337384

Conversation

@sammy-SC
Copy link
Copy Markdown
Contributor

Summary:
changelog: [internal]

fix existing C++ Animated tests and align with Android on how to go from current time to applied frame.

On iOS floor is used to decide which frame to apply. On Android, round is used.

In D75813200 I chose to use std::ceil as I wanted to have a predictable behaviour in tests. This is not wrong but it is better to align at least with one of the existing implementations. Let's go with Android as it strikes the balance of what we want to see in tests (an animation that is running for 1000ms should finish after 1000ms, not 1000ms + one frame) and C++ Animated is closer to at least one of the existing implementations.

Differential Revision: D76337384

Summary:
changelog: [internal]

fix existing C++ Animated tests and align with Android on how to go from current time to applied frame.

On iOS [floor](https://fburl.com/code/7zy5e5ul) is used to decide which frame to apply. On Android, [round](https://github.com/facebook/react-native/blob/main/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/animated/FrameBasedAnimationDriver.kt#L65) is used.

In D75813200 I chose to use `std::ceil` as I wanted to have a predictable behaviour in tests. This is not wrong but it is better to align at least with one of the existing implementations. Let's go with Android as it strikes the balance of what we want to see in tests (an animation that is running for 1000ms should finish after 1000ms, not 1000ms + one frame) and C++ Animated is closer to at least one of the existing implementations.

Differential Revision: D76337384
@facebook-github-bot facebook-github-bot added CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. p: Facebook Partner: Facebook Partner labels Jun 10, 2025
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D76337384

@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request has been merged in 2079cb2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported Merged This PR has been merged. p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants