You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
159 lines
4.2 KiB
159 lines
4.2 KiB
using Model;
|
|
using Xunit;
|
|
|
|
namespace Model.Tests
|
|
{
|
|
public class LargeImageTests
|
|
{
|
|
[Fact]
|
|
public void Equals_ReturnsTrue_WhenBase64StringsAreEqual()
|
|
{
|
|
var base64String = "VGhpcyBpcyBhIGJhc2U2NCBlbmNvZGVkIHN0cmluZw==";
|
|
var image1 = new LargeImage(base64String);
|
|
var image2 = new LargeImage(base64String);
|
|
|
|
var result = image1.Equals(image2);
|
|
|
|
Assert.True(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_ReturnsFalse_WhenBase64StringsAreDifferent()
|
|
{
|
|
var base64String1 = "VGhpcyBpcyBhIGJhc2U2NCBlbmNvZGVkIHN0cmluZw==";
|
|
var base64String2 = "VGhpcyBpcyBhIGJhc2U2NSBlbmNvZGVkIHN0cmluZw==";
|
|
var image1 = new LargeImage(base64String1);
|
|
var image2 = new LargeImage(base64String2);
|
|
|
|
var result = image1.Equals(image2);
|
|
|
|
Assert.False(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_WithNull_ReturnsFalse()
|
|
{
|
|
LargeImage image = new LargeImage("base64");
|
|
|
|
var result = image.Equals(null);
|
|
|
|
|
|
Assert.False(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_WithSameReference_ReturnsTrue()
|
|
{
|
|
LargeImage image = new LargeImage("base64");
|
|
|
|
var result = image.Equals(image);
|
|
|
|
|
|
Assert.True(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_WithDifferentType_ReturnsFalse()
|
|
{
|
|
LargeImage image = new LargeImage("base64");
|
|
var obj = new object();
|
|
|
|
var result = image.Equals(obj);
|
|
|
|
|
|
Assert.False(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_WithDifferentBase64_ReturnsFalse()
|
|
{
|
|
LargeImage image1 = new LargeImage("base64");
|
|
LargeImage image2 = new LargeImage("differentBase64");
|
|
|
|
var result = image1.Equals(image2);
|
|
|
|
|
|
Assert.False(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_WithSameBase64_ReturnsTrue()
|
|
{
|
|
LargeImage image1 = new LargeImage("base64");
|
|
LargeImage image2 = new LargeImage("base64");
|
|
|
|
var result = image1.Equals(image2);
|
|
|
|
|
|
Assert.True(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void GetHashCode_ReturnsSameHashCode_ForSameBase64()
|
|
{
|
|
string base64 = "abcdefghij";
|
|
LargeImage largeImage1 = new LargeImage(base64);
|
|
LargeImage largeImage2 = new LargeImage(base64);
|
|
|
|
int hashCode1 = largeImage1.GetHashCode();
|
|
int hashCode2 = largeImage2.GetHashCode();
|
|
|
|
Assert.Equal(hashCode1, hashCode2);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_ReturnsTrue_WhenComparingWithItself()
|
|
{
|
|
var largeImage = new LargeImage("base64String");
|
|
|
|
var result = largeImage.Equals(largeImage);
|
|
|
|
Assert.True(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_ReturnsFalse_WhenComparingWithNull()
|
|
{
|
|
var largeImage = new LargeImage("base64String");
|
|
|
|
var result = largeImage.Equals(null);
|
|
|
|
Assert.False(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_ReturnsFalse_WhenComparingWithDifferentType()
|
|
{
|
|
var largeImage = new LargeImage("base64String");
|
|
var otherObject = new object();
|
|
|
|
var result = largeImage.Equals(otherObject);
|
|
|
|
Assert.False(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_ReturnsFalse_WhenComparingWithDifferentLargeImage()
|
|
{
|
|
var largeImage1 = new LargeImage("base64String1");
|
|
var largeImage2 = new LargeImage("base64String2");
|
|
|
|
var result = largeImage1.Equals(largeImage2);
|
|
|
|
Assert.False(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Equals_ReturnsTrue_WhenComparingWithEqualLargeImage()
|
|
{
|
|
var base64String = "base64String";
|
|
var largeImage1 = new LargeImage(base64String);
|
|
var largeImage2 = new LargeImage(base64String);
|
|
|
|
var result = largeImage1.Equals(largeImage2);
|
|
|
|
Assert.True(result);
|
|
}
|
|
}
|
|
}
|