Skip to content

Commit

Permalink
add tests for entity
Browse files Browse the repository at this point in the history
Barsonax committed Apr 28, 2024
1 parent 50d31e0 commit a2b70c6
Showing 1 changed file with 79 additions and 0 deletions.
79 changes: 79 additions & 0 deletions CleanAspCore.Api.Tests/Data/EntityTests.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
using CleanAspCore.Data.Models;

namespace CleanAspCore.Api.Tests.Data;

public class EntityTests
{
private class TestEntity : Entity;

Check warning on line 7 in CleanAspCore.Api.Tests/Data/EntityTests.cs

GitHub Actions / build

Type 'TestEntity' can be sealed because it has no subtypes in its containing assembly and is not externally visible (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1852)

Check warning on line 7 in CleanAspCore.Api.Tests/Data/EntityTests.cs

GitHub Actions / build

Type 'TestEntity' can be sealed because it has no subtypes in its containing assembly and is not externally visible (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1852)

[Test]
public void EntityWithDifferentId_OpEqual_ReturnsFalse()
{
var entity1 = new TestEntity { Id = Guid.NewGuid() };
var entity2 = new TestEntity { Id = Guid.NewGuid() };

(entity1 == entity2).Should().BeFalse();
}

[Test]
public void EntityWithSameId_OpEqual_ReturnsTrue()
{
var id = Guid.NewGuid();
var entity1 = new TestEntity { Id = id };
var entity2 = new TestEntity { Id = id };

(entity1 == entity2).Should().BeTrue();
}

[Test]
public void EntitySameInstance_OpEqual_ReturnsTrue()
{
var id = Guid.NewGuid();
var entity1 = new TestEntity { Id = id };
var entity2 = entity1;

(entity1 == entity2).Should().BeTrue();
}

[Test]
public void EntityAndNull_OpEqual_ReturnsFalse()
{
var entity1 = new TestEntity { Id = Guid.NewGuid() };
TestEntity entity2 = null!;

#pragma warning disable CA1508
(entity1 == entity2).Should().BeFalse();
#pragma warning restore CA1508
}

[Test]
public void NullAndNull_OpEqual_ReturnsTrue()
{
TestEntity entity1 = null!;
TestEntity entity2 = null!;

#pragma warning disable CA1508
(entity1 == entity2).Should().BeTrue();
#pragma warning restore CA1508
}

[Test]
public void EntityWithDifferentId_OpNotEqual_ReturnsFalse()
{
var entity1 = new TestEntity { Id = Guid.NewGuid() };
var entity2 = new TestEntity { Id = Guid.NewGuid() };

(entity1 != entity2).Should().BeTrue();
}

[Test]
public void EntityWithSameId_OpNotEqual_ReturnsTrue()
{
var id = Guid.NewGuid();
var entity1 = new TestEntity { Id = id };
var entity2 = new TestEntity { Id = id };

(entity1 != entity2).Should().BeFalse();
}
}

0 comments on commit a2b70c6

Please sign in to comment.