✅ Add model's tests
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
parent
9142dc8cef
commit
72b35b38a2
@ -0,0 +1,49 @@
|
|||||||
|
using Model;
|
||||||
|
using Xunit;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class AthleteTests
|
||||||
|
{
|
||||||
|
[Fact]
|
||||||
|
public void CheckAdd_ValidUser_ReturnsTrue()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
var athlete = new Athlete();
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var user = new User();
|
||||||
|
var result = athlete.CheckAdd(user);
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
Assert.True(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void CheckAdd_NullUser_ReturnsFalse()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
var athlete = new Athlete();
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var result = athlete.CheckAdd(null);
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
Assert.False(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void CheckAdd_NonAthleteUser_ReturnsFalse()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
var athlete = new Athlete();
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var user = new User { Role = new Coach() }; // Assuming Coach inherits from Role
|
||||||
|
var result = athlete.CheckAdd(user);
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
Assert.False(result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,49 @@
|
|||||||
|
using Model;
|
||||||
|
using Xunit;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class CoachTests
|
||||||
|
{
|
||||||
|
[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);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void CheckAdd_NullUser_ReturnsFalse()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
var coach = new Coach();
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var result = coach.CheckAdd(null);
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
Assert.False(result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
using Model;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using Xunit;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class DataSourceTests
|
||||||
|
{
|
||||||
|
[Fact]
|
||||||
|
public void Constructor_WithArguments_InitializesProperties()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
var id = 1;
|
||||||
|
var type = "Type";
|
||||||
|
var model = "Model";
|
||||||
|
var precision = 0.5f;
|
||||||
|
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);
|
||||||
|
Assert.Equal(precision, dataSource.Precision);
|
||||||
|
Assert.Same(athletes, dataSource.Athletes);
|
||||||
|
Assert.Same(activities, dataSource.Activities);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
global using Xunit;
|
|
@ -0,0 +1,73 @@
|
|||||||
|
using Xunit;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class HeartRateTests
|
||||||
|
{
|
||||||
|
[Fact]
|
||||||
|
public void HeartRate_Constructor_WithValidParameters()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
int id = 1;
|
||||||
|
int bpm = 80;
|
||||||
|
TimeOnly timestamp = new TimeOnly(12, 30, 0);
|
||||||
|
Activity activity = new Activity();
|
||||||
|
double? latitude = 40.7128;
|
||||||
|
double? longitude = -74.0060;
|
||||||
|
double? altitude = 10.5;
|
||||||
|
int? cadence = 120;
|
||||||
|
double? distance = 5.2;
|
||||||
|
double? speed = 10.5;
|
||||||
|
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);
|
||||||
|
Assert.Equal(activity, heartRate.Activity);
|
||||||
|
Assert.Equal(latitude, heartRate.Latitude);
|
||||||
|
Assert.Equal(longitude, heartRate.Longitude);
|
||||||
|
Assert.Equal(altitude, heartRate.Altitude);
|
||||||
|
Assert.Equal(cadence, heartRate.Cadence);
|
||||||
|
Assert.Equal(distance, heartRate.Distance);
|
||||||
|
Assert.Equal(speed, heartRate.Speed);
|
||||||
|
Assert.Equal(power, heartRate.Power);
|
||||||
|
Assert.Equal(temperature, heartRate.Temperature);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void HeartRate_ToString_ReturnsExpectedString()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
int id = 1;
|
||||||
|
int bpm = 80;
|
||||||
|
TimeOnly timestamp = new TimeOnly(12, 30, 0);
|
||||||
|
Activity activity = new Activity();
|
||||||
|
double? latitude = 40.7128;
|
||||||
|
double? longitude = -74.0060;
|
||||||
|
double? altitude = 10.5;
|
||||||
|
int? cadence = 120;
|
||||||
|
double? distance = 5.2;
|
||||||
|
double? speed = 10.5;
|
||||||
|
int? power = 200;
|
||||||
|
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);
|
||||||
|
Assert.Contains($"temperature of {temperature}°C", result);
|
||||||
|
Assert.Contains($"altitude of {altitude}m", result);
|
||||||
|
Assert.Contains($"at {longitude}°E and {latitude}°N", result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
using Xunit;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class LargeImageTests
|
||||||
|
{
|
||||||
|
[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);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
using Xunit;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class NotificationTests
|
||||||
|
{
|
||||||
|
[Fact]
|
||||||
|
public void Constructor_InitializesPropertiesCorrectly()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
int id = 1;
|
||||||
|
string message = "Test notification";
|
||||||
|
DateTime date = DateTime.Now;
|
||||||
|
bool status = false;
|
||||||
|
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);
|
||||||
|
Assert.Equal(status, notification.Statut);
|
||||||
|
Assert.Equal(urgency, notification.Urgence);
|
||||||
|
Assert.Equal(toUserId, notification.ToUserId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
using Xunit;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class RelationshipRequestTests
|
||||||
|
{
|
||||||
|
[Fact]
|
||||||
|
public void Constructor_InitializesPropertiesCorrectly()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
int id = 1;
|
||||||
|
int fromUserId = 2;
|
||||||
|
int toUserId = 3;
|
||||||
|
string status = "Pending";
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var request = new RelationshipRequest
|
||||||
|
{
|
||||||
|
Id = id,
|
||||||
|
FromUser = fromUserId,
|
||||||
|
ToUser = toUserId
|
||||||
|
};
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
Assert.Equal(id, request.Id);
|
||||||
|
Assert.Equal(fromUserId, request.FromUser);
|
||||||
|
Assert.Equal(toUserId, request.ToUser);
|
||||||
|
Assert.Equal(status, request.Status);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
using Xunit;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class RoleTests
|
||||||
|
{
|
||||||
|
[Fact]
|
||||||
|
public void AddUser_WithValidUser_ReturnsTrue()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
var role = new Athlete(); // Vous pouvez utiliser Athlete ou Coach selon votre besoin
|
||||||
|
var user = new User(); // Créez un objet User valide
|
||||||
|
|
||||||
|
// 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
|
||||||
|
|
||||||
|
// Act
|
||||||
|
bool result = role.AddUser(user);
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
Assert.False(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -1,10 +0,0 @@
|
|||||||
namespace UnitTestsModel;
|
|
||||||
|
|
||||||
public class UnitTest1
|
|
||||||
{
|
|
||||||
[Fact]
|
|
||||||
public void Test1()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,41 @@
|
|||||||
|
using Xunit;
|
||||||
|
|
||||||
|
namespace Model.Tests
|
||||||
|
{
|
||||||
|
public class UserTests
|
||||||
|
{
|
||||||
|
[Fact]
|
||||||
|
public void UserConstructor_ValidParameters_ConstructsObject()
|
||||||
|
{
|
||||||
|
// Arrange
|
||||||
|
string username = "john_doe";
|
||||||
|
string profilePicture = "profile.jpg";
|
||||||
|
string lastName = "Doe";
|
||||||
|
string firstName = "John";
|
||||||
|
string email = "john.doe@example.com";
|
||||||
|
string password = "password";
|
||||||
|
string sex = "Male";
|
||||||
|
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
|
||||||
|
|
||||||
|
// 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);
|
||||||
|
Assert.Equal(lastName, user.LastName);
|
||||||
|
Assert.Equal(firstName, user.FirstName);
|
||||||
|
Assert.Equal(email, user.Email);
|
||||||
|
Assert.Equal(password, user.MotDePasse);
|
||||||
|
Assert.Equal(sex, user.Sexe);
|
||||||
|
Assert.Equal(length, user.Lenght);
|
||||||
|
Assert.Equal(weight, user.Weight);
|
||||||
|
Assert.Equal(dateOfBirth, user.DateOfBirth);
|
||||||
|
Assert.Equal(role, user.Role);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue