🧪 Add somes tests

WORK-KMO2
Antoine PEREDERII 1 year ago
parent baa93b4dbc
commit c60e18eec9

@ -162,5 +162,58 @@ namespace UnitTestsModel
Assert.Equal(heartRates, activity.HeartRates);
}
[Fact]
public void Constructor_SetsPropertiesCorrectly2()
{
var id = 1;
var type = "Running";
var date = DateTime.Now;
var startTime = date.AddHours(1);
var endTime = date.AddHours(2);
var effort = 3;
var variability = 0.5f;
var variance = 0.3f;
var standardDeviation = 0.2f;
var average = 150f;
var maximum = 180;
var minimum = 120;
var averageTemperature = 25.5f;
var hasAutoPause = false;
var user = new User();
var activity = new Activity(
id,
type,
date,
startTime,
endTime,
effort,
variability,
variance,
standardDeviation,
average,
maximum,
minimum,
averageTemperature,
hasAutoPause,
user
);
Assert.Equal(id, activity.Id);
Assert.Equal(type, activity.Type);
Assert.Equal(date, activity.Date);
Assert.Equal(startTime, activity.StartTime);
Assert.Equal(endTime, activity.EndTime);
Assert.Equal(effort, activity.Effort);
Assert.Equal(variability, activity.Variability);
Assert.Equal(variance, activity.Variance);
Assert.Equal(standardDeviation, activity.StandardDeviation);
Assert.Equal(average, activity.Average);
Assert.Equal(maximum, activity.Maximum);
Assert.Equal(minimum, activity.Minimum);
Assert.Equal(averageTemperature, activity.AverageTemperature);
Assert.Equal(hasAutoPause, activity.HasAutoPause);
Assert.Equal(user, activity.Athlete);
}
}
}

@ -8,27 +8,22 @@ namespace Model.Tests
[Fact]
public void CheckAdd_ValidUser_ReturnsTrue()
{
// Arrange
var athlete = new Athlete();
// Act
var user = new User("hello13", "dkjd.png", "John", "Doe", "john@exemple.com", "password", "Male", 180.5f, 75.3f, new System.DateTime(1990, 5, 15), new Athlete());
var result = athlete.CheckAdd(user);
// Assert
Assert.True(result);
}
[Fact]
public void CheckAdd_CoachUser_ReturnsFalse()
{
// Arrange
var athlete = new Athlete();
var user = new User("hello13", "dkjd.png", "John", "Doe", "john@exemple.com", "password", "Male", 180.5f, 75.3f, new System.DateTime(1990, 5, 15), new Coach());
var result = athlete.CheckAdd(user);
// Assert
Assert.False(result);
}
}

@ -8,28 +8,22 @@ namespace Model.Tests
[Fact]
public void CheckAdd_AthleteUser_ReturnsTrue()
{
// Arrange
var coach = new Coach();
// Act
var user = new User { Role = new Athlete() };
var result = coach.CheckAdd(user);
// Assert
Assert.True(result);
}
[Fact]
public void CheckAdd_NonAthleteUser_ReturnsFalse()
{
// Arrange
var coach = new Coach();
// Act
var user = new User { Role = new Coach() };
var result = coach.CheckAdd(user);
// Assert
Assert.False(result);
}
}

@ -9,7 +9,6 @@ namespace Model.Tests
[Fact]
public void Constructor_WithArguments_InitializesProperties()
{
// Arrange
var id = 1;
var type = "Type";
var model = "Model";
@ -17,10 +16,8 @@ namespace Model.Tests
var athletes = new List<User>();
var activities = new List<Activity>();
// Act
var dataSource = new DataSource(id, type, model, precision, athletes, activities);
// Assert
Assert.Equal(id, dataSource.Id);
Assert.Equal(type, dataSource.Type);
Assert.Equal(model, dataSource.Model);

@ -0,0 +1,32 @@
using Model;
using Model.Repository;
using Moq;
using Xunit;
namespace UnitTestsModel
{
public class EnumMapperTests
{
[Theory]
[InlineData("None", Shared.AthleteOrderCriteria.None)]
[InlineData("ByUsername", Shared.AthleteOrderCriteria.ByUsername)]
[InlineData("ByFirstName", Shared.AthleteOrderCriteria.ByFirstName)]
[InlineData("ByLastName", Shared.AthleteOrderCriteria.ByLastName)]
[InlineData("BySexe", Shared.AthleteOrderCriteria.BySexe)]
[InlineData("ByLenght", Shared.AthleteOrderCriteria.ByLenght)]
[InlineData("ByWeight", Shared.AthleteOrderCriteria.ByWeight)]
[InlineData("ByDateOfBirth", Shared.AthleteOrderCriteria.ByDateOfBirth)]
[InlineData("ByEmail", Shared.AthleteOrderCriteria.ByEmail)]
[InlineData("ByIsCoach", Shared.AthleteOrderCriteria.ByIsCoach)]
[InlineData(null, Shared.AthleteOrderCriteria.None)]
[InlineData("InvalidValue", Shared.AthleteOrderCriteria.None)]
public void ToEnum_WithValidValue_ReturnsCorrectEnumValue(string? value, Shared.AthleteOrderCriteria expected)
{
var userRepositoryMock = new Mock<IUserRepository>();
var result = EnumMappeur.ToEnum(userRepositoryMock.Object, value);
Assert.Equal(expected, result);
}
}
}

@ -8,7 +8,7 @@ namespace Model.Tests
[Fact]
public void HeartRate_Constructor_WithValidParameters()
{
// Arrange
int id = 1;
int bpm = 80;
TimeOnly timestamp = new TimeOnly(12, 30, 0);
@ -22,10 +22,8 @@ namespace Model.Tests
int? power = 200;
double? temperature = 25.5;
// Act
var heartRate = new HeartRate(id, bpm, timestamp, activity, latitude, longitude, altitude, cadence, distance, speed, power, temperature);
// Assert
Assert.Equal(id, heartRate.Id);
Assert.Equal(bpm, heartRate.Bpm);
Assert.Equal(timestamp, heartRate.Timestamp);
@ -43,7 +41,6 @@ namespace Model.Tests
[Fact]
public void HeartRate_ToString_ReturnsExpectedString()
{
// Arrange
int id = 1;
int bpm = 80;
TimeOnly timestamp = new TimeOnly(12, 30, 0);
@ -58,10 +55,8 @@ namespace Model.Tests
double? temperature = 25.5;
var heartRate = new HeartRate(id, bpm, timestamp, activity, latitude, longitude, altitude, cadence, distance, speed, power, temperature);
// Act
var result = heartRate.ToString();
// Assert
Assert.Contains($"HeartRate #{id}", result);
Assert.Contains($"{bpm} bpm", result);
Assert.Contains($"{timestamp:HH:mm:ss}", result);

@ -7,31 +7,25 @@ namespace Model.Tests
[Fact]
public void Equals_ReturnsTrue_WhenBase64StringsAreEqual()
{
// Arrange
var base64String = "VGhpcyBpcyBhIGJhc2U2NCBlbmNvZGVkIHN0cmluZw==";
var image1 = new LargeImage(base64String);
var image2 = new LargeImage(base64String);
// Act
var result = image1.Equals(image2);
// Assert
Assert.True(result);
}
[Fact]
public void Equals_ReturnsFalse_WhenBase64StringsAreDifferent()
{
// Arrange
var base64String1 = "VGhpcyBpcyBhIGJhc2U2NCBlbmNvZGVkIHN0cmluZw==";
var base64String2 = "VGhpcyBpcyBhIGJhc2U2NSBlbmNvZGVkIHN0cmluZw==";
var image1 = new LargeImage(base64String1);
var image2 = new LargeImage(base64String2);
// Act
var result = image1.Equals(image2);
// Assert
Assert.False(result);
}
}

@ -7,7 +7,6 @@ namespace Model.Tests
[Fact]
public void Constructor_InitializesPropertiesCorrectly()
{
// Arrange
int id = 1;
string message = "Test notification";
DateTime date = DateTime.Now;
@ -15,10 +14,8 @@ namespace Model.Tests
string urgency = "High";
int toUserId = 10;
// Act
var notification = new Notification(id, message, date, status, urgency, toUserId);
// Assert
Assert.Equal(id, notification.IdNotif);
Assert.Equal(message, notification.Message);
Assert.Equal(date, notification.Date);

@ -7,12 +7,10 @@ namespace Model.Tests
[Fact]
public void Constructor_InitializesPropertiesCorrectly()
{
// Arrange
int id = 1;
int fromUserId = 2;
int toUserId = 3;
// Act
var request = new RelationshipRequest
{
Id = id,
@ -20,7 +18,6 @@ namespace Model.Tests
ToUser = toUserId
};
// Assert
Assert.Equal(id, request.Id);
Assert.Equal(fromUserId, request.FromUser);
Assert.Equal(toUserId, request.ToUser);

@ -7,28 +7,22 @@ namespace Model.Tests
[Fact]
public void AddUser_WithValidUser_ReturnsTrue()
{
// Arrange
var role = new Athlete(); // Vous pouvez utiliser Athlete ou Coach selon votre besoin
var role = new Athlete();
var user = new User("hello13", "dkjd.png", "John", "Doe", "john@exemple.com", "password", "M", 180.5f, 75.3f, new System.DateTime(1990, 5, 15), new Athlete());
// Act
bool result = role.AddUser(user);
// Assert
Assert.True(result);
}
[Fact]
public void AddUser_WithInvalidUser_ReturnsFalse()
{
// Arrange
var role = new Athlete(); // Vous pouvez utiliser Athlete ou Coach selon votre besoin
var user = new User(); // Créez un objet User invalide
var role = new Athlete();
var user = new User();
// Act
bool result = role.AddUser(user);
// Assert
Assert.False(result);
}

@ -11,6 +11,7 @@
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.6.0" />
<PackageReference Include="Moq" Version="4.20.70" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>

@ -7,7 +7,6 @@ namespace Model.Tests
[Fact]
public void UserConstructor_ValidParameters_ConstructsObject()
{
// Arrange
string username = "john_doe";
string profilePicture = "profile.jpg";
string lastName = "Doe";
@ -18,12 +17,10 @@ namespace Model.Tests
float length = 180.5f;
float weight = 75.3f;
DateTime dateOfBirth = new DateTime(1990, 5, 15);
Role role = new Athlete(); // You can change this to the appropriate role
Role role = new Athlete();
// Act
User user = new User(username, profilePicture, lastName, firstName, email, password, sex, length, weight, dateOfBirth, role);
// Assert
Assert.NotNull(user);
Assert.Equal(username, user.Username);
Assert.Equal(profilePicture, user.ProfilePicture);

Loading…
Cancel
Save