How to reproduce:
1. Download and open the attached "PoseEquality" project
2. Open the Test Runner window (Window > General > Test Runner)
3. In the Test Runner window, press "Run All"
Expected outcome: The tests succeed
Actual outcome: The tests fail
Reproducible with: 2021.3.30f1, 2022.3.9f1, 2023.1.13f1, 2023.2.0b9, 2023.3.0a5
Tested on: macOS (Ventura 13.4)
The Pose Equals function doesn't always return true even when compared to itself, while the Quaternion Equals function does always return true.
This is because Pose Equals function doesn't use Quaternion Equals function but its == operator.
This lead to inconsistencies when using the `Assert.AreEqual` function in automated testing
See forum post: https://forum.unity.com/threads/pose-equality-not-implemented-in-accordance-with-quaterion.1484145/ (fix suggested in the post)
2. How can we reproduce it using the example you attached
- Open the project
- Run the editor tests
Expected result: The test succeed
Actual result: The test fail