ds5678 61da5e9348 Refactor tests and improve code quality
- Updated test dependencies: replaced `coverlet.collector` with `NUnit.Analyzers` for enhanced test analysis.
- Refactored `TypeSignatureNameTests` to use instance setup and improved assertions with `Is.EqualTo`.
- Simplified `AssetEqualityTests` by directly using `AssetEqualityComparer` in assertions.
- Made `FileStreamTests` static and removed unused setup code.
- Improved `RangeTests` by grouping assertions and using `Assert.EnterMultipleScope`.
- Standardized random data generation with `TestContext.CurrentContext.Random`.
- Removed unused `RandomStructEnumerable` class.
- Refactored `DefaultJsonWalkerTests` and `DefaultYamlWalkerTests` for better readability and performance.
- Removed redundant code in `VertexDataBlobTests` and simplified equivalence assertions.
- General cleanup: removed unused namespaces, improved formatting, and aligned with modern C# conventions.
2025-09-21 15:33:59 -07:00

123 lines
2.6 KiB
C#

using AssetRipper.Assets.Metadata;
namespace AssetRipper.Assets.Tests;
public class PPtrTests
{
[Test]
public void PPtr_ReturnsCorrectValues()
{
// Arrange
int fileID = 1;
long pathID = 2;
// Act
PPtr pptr = new PPtr(fileID, pathID);
// Assert
using (Assert.EnterMultipleScope())
{
Assert.That(pptr.FileID, Is.EqualTo(fileID));
Assert.That(pptr.PathID, Is.EqualTo(pathID));
}
}
[Test]
public void PPtr_ImplicitOperator_ReturnsCorrectType()
{
// Arrange
int fileID = 1;
long pathID = 2;
PPtr<IUnityObjectBase> pptr = new PPtr<IUnityObjectBase>(fileID, pathID);
// Act
PPtr convertedPptr = pptr;
// Assert
using (Assert.EnterMultipleScope())
{
Assert.That(convertedPptr.FileID, Is.EqualTo(fileID));
Assert.That(convertedPptr.PathID, Is.EqualTo(pathID));
}
}
[Test]
public void PPtrT_ReturnsCorrectValues()
{
// Arrange
int fileID = 1;
long pathID = 2;
// Act
PPtr<IDerivedUnityObjectInterface> pptr = new PPtr<IDerivedUnityObjectInterface>(fileID, pathID);
// Assert
using (Assert.EnterMultipleScope())
{
Assert.That(pptr.FileID, Is.EqualTo(fileID));
Assert.That(pptr.PathID, Is.EqualTo(pathID));
}
}
[Test]
public void PPtrT_ExplicitOperator_ReturnsCorrectType()
{
// Arrange
int fileID = 1;
long pathID = 2;
PPtr<IUnityObjectBase> pptr = new PPtr<IUnityObjectBase>(fileID, pathID);
// Act
PPtr<IDerivedUnityObjectInterface> convertedPptr = (PPtr<IDerivedUnityObjectInterface>)pptr;
// Assert
using (Assert.EnterMultipleScope())
{
Assert.That(convertedPptr.FileID, Is.EqualTo(fileID));
Assert.That(convertedPptr.PathID, Is.EqualTo(pathID));
}
}
[Test]
public void PPtrT_ImplicitOperator_ReturnsCorrectType()
{
// Arrange
int fileID = 1;
long pathID = 2;
PPtr<IDerivedUnityObjectInterface> pptr = new PPtr<IDerivedUnityObjectInterface>(fileID, pathID);
// Act
PPtr<IUnityObjectBase> convertedPptr = pptr;
// Assert
using (Assert.EnterMultipleScope())
{
Assert.That(convertedPptr.FileID, Is.EqualTo(fileID));
Assert.That(convertedPptr.PathID, Is.EqualTo(pathID));
}
}
[Test]
public void PPtrT_ExplicitOperator_FromIUnityObjectBase_ReturnsCorrectType()
{
// Arrange
int fileID = 1;
long pathID = 2;
PPtr<IUnityObjectBase> pptr = new PPtr<IUnityObjectBase>(fileID, pathID);
// Act
PPtr<IDerivedUnityObjectInterface> convertedPptr = (PPtr<IDerivedUnityObjectInterface>)pptr;
// Assert
using (Assert.EnterMultipleScope())
{
Assert.That(convertedPptr.FileID, Is.EqualTo(fileID));
Assert.That(convertedPptr.PathID, Is.EqualTo(pathID));
}
}
private interface IDerivedUnityObjectInterface : IUnityObjectBase
{
}
}