🎨 💥 Introduce UnitTest
continuous-integration/drone/push Build is passing Details

master
Antoine PEREDERII 2 years ago
commit c131f33361

@ -1,70 +1,68 @@
///// \file /// \file
///// \brief Fichier de test pour la classe Account. /// \brief Définition des tests pour la classe Consultant.
///// \author Votre nom /// \author PEREDERII Antoine, LOUVET Titouan
//using Model; using Xunit;
//using System; using System;
//using System.ComponentModel; using Model;
//using System.Diagnostics;
//using System.Runtime.Serialization;
//namespace UnitTest namespace UnitTest
//{ {
// /// <summary> public class AccountTests
// /// Classe de test pour la classe Account. {
// /// </summary> [Fact]
// public class AccountTest public void Account_Initialization_Test()
// { {
// /// <summary> // Initialisation
// /// Méthode principale du test. double initialBalance = 1000.0;
// /// </summary> string accountName = "Gérard";
// [Fact] string accountIBAN = "FR7612345678901234567895003";
// public void TestAnAccount()
// {
// // Création de deux comptes
// Account account1 = new Account(1000, "John Doe", "FR123456789");
// Account account2 = new Account(500, "Jane Smith", "FR987654321");
// // Affichage des informations des comptes // Account
// Console.WriteLine("Compte 1:"); Account account = new Account(initialBalance, accountName, accountIBAN);
// Console.WriteLine($"Nom: {account1.Name}");
// Console.WriteLine($"IBAN: {account1.IBANHide}");
// Console.WriteLine($"Solde: {account1.Balance}");
// Console.WriteLine("\nCompte 2:"); // Assert
// Console.WriteLine($"Nom: {account2.Name}"); Assert.Equal(initialBalance, account.Balance);
// Console.WriteLine($"IBAN: {account2.IBANHide}"); Assert.Equal(accountName, account.Name);
// Console.WriteLine($"Solde: {account2.Balance}"); Assert.Equal(accountIBAN, account.IBAN);
}
// // Effectuer une transaction entre les comptes [Theory]
// double amount = 200; [InlineData(1000.0, 500.0, true, 500.0)] // Debit transaction
// Console.WriteLine($"\nEffectuer une transaction de {amount} du compte 1 vers le compte 2..."); [InlineData(1000.0, 500.0, false, 1500.0)] // Credit transaction
// account1.DoTransactions(account2, amount, true); public void Account_DoTransactions_Test(double initialBalance, double transactionAmount, bool isDebit, double expectedBalance)
{
// Initialisation
Account account = new Account(initialBalance, "Gérard", "FR7612345678901234567895003");
Account otherAccount = new Account(0.0, "Gérarde", "FR76987654321098765432109876004");
// // Affichage des informations des comptes après la transaction // Account
// Console.WriteLine("\nAprès la transaction:"); account.DoTransactions(otherAccount, transactionAmount, isDebit);
// Console.WriteLine("Compte 1:");
// Console.WriteLine($"Nom: {account1.Name}");
// Console.WriteLine($"IBAN: {account1.IBANHide}");
// Console.WriteLine($"Solde: {account1.Balance}");
// Console.WriteLine("\nCompte 2:"); // Assert
// Console.WriteLine($"Nom: {account2.Name}"); Assert.Equal(expectedBalance, account.Balance);
// Console.WriteLine($"IBAN: {account2.IBANHide}"); }
// Console.WriteLine($"Solde: {account2.Balance}");
// // Demander de l'aide public static TheoryData<double, double, bool, double> TestData =>
// string helpSubject = "Besoin d'aide"; new TheoryData<double, double, bool, double>
// string helpDescription = "Je rencontre un problème avec mon compte."; {
// Message helpMessage = Account.AskForHelp(helpSubject, helpDescription); { 1000.0, 500.0, true, 500.0 }, // Debit transaction
// Console.WriteLine($"\nDemande d'aide envoyée : {helpMessage}"); { 1000.0, 500.0, false, 1500.0 }, // Credit transaction
};
// // Comparaison de deux comptes [Theory]
// Console.WriteLine("\nComparaison des comptes..."); [MemberData(nameof(TestData))]
// bool areEqual = account1.Equals(account2); public void Account_DoTransactions_MemberData_Test(double initialBalance, double transactionAmount, bool isDebit, double expectedBalance)
// Console.WriteLine($"Les comptes sont-ils égaux ? {areEqual}"); {
// Initialisation
Account account = new Account(initialBalance, "Gérard", "FR7612345678901234567895003");
Account otherAccount = new Account(0.0, "Gérarde", "FR76987654321098765432109876004");
// //Console.ReadLine(); // Account
// } account.DoTransactions(otherAccount, transactionAmount, isDebit);
// }
//} // Assert
Assert.Equal(expectedBalance, account.Balance);
}
}
}

@ -1,34 +1,80 @@
//using System; /// \file
//using Model; /// \brief Définition des tests pour la classe Consultant.
/// \author PEREDERII Antoine, LOUVET Titouan
//namespace UnitTest
//{ using Xunit;
// /// \file using System;
// /// \brief Fichier de tests pour la classe Consultant. using Model;
// /// \author Votre nom
namespace UnitTest
// /// <summary> {
// /// Classe de tests pour la classe Consultant. /// <summary>
// /// </summary> /// Classe de tests pour la classe Consultant.
// public class ConsultantTests /// </summary>
// { public class ConsultantTests
// /// <summary> {
// /// Teste si la liste des messages du consultant est initialisée correctement. /// <summary>
// /// </summary> /// Teste si la liste des messages du consultant est initialisée correctement.
// [Fact] /// </summary>
// public void Constructor_MessagesListInitialized() [Fact]
// { public void Constructor_MessagesListInitialized()
// // Arrange {
// string name = "Doe"; // Initialisation
// string firstName = "John"; string name = "Cons";
// string password = "123456"; string firstName = "Gérard";
string password = "123456";
// // Act
// Consultant consultant = new Consultant(name, firstName, password); // Act
Consultant consultant = new Consultant(name, firstName, password);
// // Assert
// Assert.NotNull(consultant.MessagesList); // Assert
// Assert.Empty(consultant.MessagesList); Assert.NotNull(consultant.MessagesList);
// } Assert.Empty(consultant.MessagesList);
// } }
//}
/// <summary>
/// Teste si la liste des messages du consultant est initialisée correctement en utilisant InlineData.
/// </summary>
/// <param name="name">Nom du consultant.</param>
/// <param name="firstName">Prénom du consultant.</param>
/// <param name="password">Mot de passe du consultant.</param>
[Theory]
[InlineData("Cons", "Gérard", "123456")]
public void Constructor_MessagesListInitialized_InlineData(string name, string firstName, string password)
{
// Act
Consultant consultant = new Consultant(name, firstName, password);
// Assert
Assert.NotNull(consultant.MessagesList);
Assert.Empty(consultant.MessagesList);
}
/// <summary>
/// Fournit les données pour le test de l'initialisation de la liste des messages du consultant.
/// </summary>
public static TheoryData<string, string, string> TestData =>
new TheoryData<string, string, string>
{
{ "Cons", "Gérard", "123456" },
};
/// <summary>
/// Teste si la liste des messages du consultant est initialisée correctement en utilisant MemberData.
/// </summary>
/// <param name="name">Nom du consultant.</param>
/// <param name="firstName">Prénom du consultant.</param>
/// <param name="password">Mot de passe du consultant.</param>
[Theory]
[MemberData(nameof(TestData))]
public void Constructor_MessagesListInitialized_MemberData(string name, string firstName, string password)
{
// Act
Consultant consultant = new Consultant(name, firstName, password);
// Assert
Assert.NotNull(consultant.MessagesList);
Assert.Empty(consultant.MessagesList);
}
}
}

@ -1,78 +1,80 @@
//using System; /// \file
//using Model; /// \brief Définition des tests pour la classe Customer.
/// \author PEREDERII Antoine, LOUVET Titouan
//namespace UnitTest using Xunit;
//{ using System;
// /// \file using Model;
// /// \brief Fichier de tests pour la classe Customer.
// /// \author Votre nom
// /// <summary> namespace UnitTest
// /// Classe de tests pour la classe Customer. {
// /// </summary> /// <summary>
// public class CustomerTests /// Classe de tests pour la classe Customer.
// { /// </summary>
// /// <summary> public class CustomerTests
// /// Teste si la liste des comptes du client est initialisée correctement. {
// /// </summary> /// <summary>
// [Fact] /// Teste si la liste des comptes du client est initialisée correctement.
// public void Constructor_AccountsListInitialized() /// </summary>
// { [Fact]
// // Arrange public void Constructor_AccountsListInitialized()
// string name = "Doe"; {
// string firstName = "John"; // Initialisation
// string password = "123456"; string name = "Cust";
string firstName = "Gérard";
string password = "123456";
// // Act // Act
// Customer customer = new Customer(name, firstName, password); Customer customer = new Customer(name, firstName, password);
// // Assert // Assert
// Assert.NotNull(customer.AccountsList); Assert.NotNull(customer.AccountsList);
// Assert.Empty(customer.AccountsList); Assert.Empty(customer.AccountsList);
// } }
// /// <summary> /// <summary>
// /// Teste l'égalité entre deux clients. /// Teste si la liste des comptes du client est initialisée correctement en utilisant InlineData.
// /// </summary> /// </summary>
// [Fact] /// <param name="name">Nom du client.</param>
// public void Equals_TwoEqualCustomers_ReturnsTrue() /// <param name="firstName">Prénom du client.</param>
// { /// <param name="password">Mot de passe du client.</param>
// // Arrange [Theory]
// string name1 = "Doe"; [InlineData("Cust", "Gérard", "123456")]
// string firstName1 = "John"; public void Constructor_AccountsListInitialized_InlineData(string name, string firstName, string password)
// string password1 = "123456"; {
// string name2 = "Doe"; // Act
// string firstName2 = "John"; Customer customer = new Customer(name, firstName, password);
// string password2 = "123456";
// // Act // Assert
// Customer customer1 = new Customer(name1, firstName1, password1); Assert.NotNull(customer.AccountsList);
// Customer customer2 = new Customer(name2, firstName2, password2); Assert.Empty(customer.AccountsList);
}
// // Assert /// <summary>
// Assert.True(customer1.Equals(customer2)); /// Fournit les données pour le test de l'initialisation de la liste des comptes du client.
// } /// </summary>
public static TheoryData<string, string, string> TestData =>
new TheoryData<string, string, string>
{
{ "Cust", "Gérard", "123456" },
};
// /// <summary> /// <summary>
// /// Teste l'égalité entre deux clients avec des identifiants différents. /// Teste si la liste des comptes du client est initialisée correctement en utilisant MemberData.
// /// </summary> /// </summary>
// [Fact] /// <param name="name">Nom du client.</param>
// public void Equals_TwoDifferentCustomers_ReturnsFalse() /// <param name="firstName">Prénom du client.</param>
// { /// <param name="password">Mot de passe du client.</param>
// // Arrange [Theory]
// string name1 = "Doe"; [MemberData(nameof(TestData))]
// string firstName1 = "John"; public void Constructor_AccountsListInitialized_MemberData(string name, string firstName, string password)
// string password1 = "123456"; {
// string name2 = "Smith"; // Act
// string firstName2 = "Jane"; Customer customer = new Customer(name, firstName, password);
// string password2 = "abcdef";
// // Act // Assert
// Customer customer1 = new Customer(name1, firstName1, password1); Assert.NotNull(customer.AccountsList);
// Customer customer2 = new Customer(name2, firstName2, password2); Assert.Empty(customer.AccountsList);
}
// // Assert }
// Assert.False(customer1.Equals(customer2)); }
// }
// }
//}

@ -1,11 +1,15 @@
using Model; /// \file
/// \brief Définition des tests pour la classe Consultant.
/// \author PEREDERII Antoine, LOUVET Titouan
using Model;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel; using System.Collections.ObjectModel;
using System.ComponentModel; using System.ComponentModel;
using UnitTest; using UnitTest;
using Xunit; using Xunit;
namespace Model.Tests namespace UnitTest
{ {
/// <summary> /// <summary>
/// Classe de tests pour la classe Manager. /// Classe de tests pour la classe Manager.

@ -1,6 +1,6 @@
/// \file /// \file
/// \brief Fichier de test pour la classe Transaction. /// \brief Définition des tests pour la classe Consultant.
/// \author PEREDERII Antoine /// \author PEREDERII Antoine, LOUVET Titouan
using System.Collections.Generic; using System.Collections.Generic;
using Xunit; using Xunit;

@ -1,6 +1,6 @@
/// \file /// \file
/// \brief Fichier de test pour la classe Transaction. /// \brief Définition des tests pour la classe Consultant.
/// \author PEREDERII Antoine /// \author PEREDERII Antoine, LOUVET Titouan
using Model; using Model;
using Xunit; using Xunit;

@ -1,6 +1,6 @@
/// \file /// \file
/// \brief Fichier de test pour la classe Transaction. /// \brief Définition des tests pour la classe Consultant.
/// \author PEREDERII Antoine /// \author PEREDERII Antoine, LOUVET Titouan
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;

Loading…
Cancel
Save