diff --git a/src/Tests/UnitTestsModel/ActivityTest.cs b/src/Tests/UnitTestsModel/ActivityTest.cs index df8e2dd..fc4d889 100644 --- a/src/Tests/UnitTestsModel/ActivityTest.cs +++ b/src/Tests/UnitTestsModel/ActivityTest.cs @@ -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); + } } } \ No newline at end of file diff --git a/src/Tests/UnitTestsModel/AthleteTest.cs b/src/Tests/UnitTestsModel/AthleteTest.cs index fdcac1b..fb398ce 100644 --- a/src/Tests/UnitTestsModel/AthleteTest.cs +++ b/src/Tests/UnitTestsModel/AthleteTest.cs @@ -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); } } diff --git a/src/Tests/UnitTestsModel/CoachTest.cs b/src/Tests/UnitTestsModel/CoachTest.cs index 57f8b5d..53db484 100644 --- a/src/Tests/UnitTestsModel/CoachTest.cs +++ b/src/Tests/UnitTestsModel/CoachTest.cs @@ -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); } } diff --git a/src/Tests/UnitTestsModel/DataSource.cs b/src/Tests/UnitTestsModel/DataSource.cs index 21cad2d..5fc96d1 100644 --- a/src/Tests/UnitTestsModel/DataSource.cs +++ b/src/Tests/UnitTestsModel/DataSource.cs @@ -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(); var activities = new List(); - // 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); diff --git a/src/Tests/UnitTestsModel/EnumMapperTest.cs b/src/Tests/UnitTestsModel/EnumMapperTest.cs new file mode 100644 index 0000000..e2dc382 --- /dev/null +++ b/src/Tests/UnitTestsModel/EnumMapperTest.cs @@ -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(); + + var result = EnumMappeur.ToEnum(userRepositoryMock.Object, value); + + Assert.Equal(expected, result); + } + } +} diff --git a/src/Tests/UnitTestsModel/HeartRateTest.cs b/src/Tests/UnitTestsModel/HeartRateTest.cs index bfdcae7..b9bb038 100644 --- a/src/Tests/UnitTestsModel/HeartRateTest.cs +++ b/src/Tests/UnitTestsModel/HeartRateTest.cs @@ -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); diff --git a/src/Tests/UnitTestsModel/LargeImageTest.cs b/src/Tests/UnitTestsModel/LargeImageTest.cs index d1f5552..5b2ac44 100644 --- a/src/Tests/UnitTestsModel/LargeImageTest.cs +++ b/src/Tests/UnitTestsModel/LargeImageTest.cs @@ -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); } } diff --git a/src/Tests/UnitTestsModel/NotificationTest.cs b/src/Tests/UnitTestsModel/NotificationTest.cs index fc9fbd1..6192289 100644 --- a/src/Tests/UnitTestsModel/NotificationTest.cs +++ b/src/Tests/UnitTestsModel/NotificationTest.cs @@ -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); diff --git a/src/Tests/UnitTestsModel/RelationshipTest.cs b/src/Tests/UnitTestsModel/RelationshipTest.cs index 5d69495..58010ef 100644 --- a/src/Tests/UnitTestsModel/RelationshipTest.cs +++ b/src/Tests/UnitTestsModel/RelationshipTest.cs @@ -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); diff --git a/src/Tests/UnitTestsModel/RoleTest.cs b/src/Tests/UnitTestsModel/RoleTest.cs index 5769808..eea0e0a 100644 --- a/src/Tests/UnitTestsModel/RoleTest.cs +++ b/src/Tests/UnitTestsModel/RoleTest.cs @@ -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); } diff --git a/src/Tests/UnitTestsModel/UnitTestsModel.csproj b/src/Tests/UnitTestsModel/UnitTestsModel.csproj index 6e23191..2e40dc7 100644 --- a/src/Tests/UnitTestsModel/UnitTestsModel.csproj +++ b/src/Tests/UnitTestsModel/UnitTestsModel.csproj @@ -11,6 +11,7 @@ + runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/src/Tests/UnitTestsModel/UserTest.cs b/src/Tests/UnitTestsModel/UserTest.cs index efd95a8..c75230c 100644 --- a/src/Tests/UnitTestsModel/UserTest.cs +++ b/src/Tests/UnitTestsModel/UserTest.cs @@ -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);