From 0c77166f854a52c8dc904ff84d86f572bf91f9dc Mon Sep 17 00:00:00 2001 From: anperederi Date: Tue, 6 Jun 2023 11:16:08 +0200 Subject: [PATCH] add some test and documentation of the code --- src/Banquale/Banquale/Banquale.csproj | 2 - src/Banquale/Banquale/Test/AccountTest.cs | 14 -- .../Banquale/Views/BalancePage.xaml.cs | 6 +- src/Banquale/Model/Account.cs | 122 ++++++++------ src/Banquale/Model/Category.cs | 12 -- src/Banquale/Model/Consultant.cs | 25 ++- src/Banquale/Model/Customer.cs | 30 ++-- src/Banquale/Model/IPersistenceManager.cs | 23 ++- src/Banquale/Model/Manager.cs | 152 +++++++++++------- src/Banquale/Model/Message.cs | 24 ++- src/Banquale/Model/Model.csproj | 6 - src/Banquale/Model/Person.cs | 37 ++++- .../Model/{Transactions.cs => Transaction.cs} | 53 ++++-- src/Banquale/UnitTest/AccountTest.cs | 70 ++++++++ src/Banquale/UnitTest/ConsultantTest.cs | 11 ++ .../Test => UnitTest}/CustomerTest.cs | 2 +- .../Test => UnitTest}/ManagerTest.cs | 2 +- src/Banquale/UnitTest/MessageTest.cs | 28 ++++ src/Banquale/UnitTest/PersonTest.cs | 11 ++ src/Banquale/UnitTest/TransactionTest.cs | 38 +++++ src/Banquale/UnitTest/UnitTest.csproj | 4 - 21 files changed, 487 insertions(+), 185 deletions(-) delete mode 100644 src/Banquale/Banquale/Test/AccountTest.cs delete mode 100644 src/Banquale/Model/Category.cs rename src/Banquale/Model/{Transactions.cs => Transaction.cs} (58%) create mode 100644 src/Banquale/UnitTest/AccountTest.cs create mode 100644 src/Banquale/UnitTest/ConsultantTest.cs rename src/Banquale/{Banquale/Test => UnitTest}/CustomerTest.cs (78%) rename src/Banquale/{Banquale/Test => UnitTest}/ManagerTest.cs (77%) create mode 100644 src/Banquale/UnitTest/MessageTest.cs create mode 100644 src/Banquale/UnitTest/PersonTest.cs create mode 100644 src/Banquale/UnitTest/TransactionTest.cs diff --git a/src/Banquale/Banquale/Banquale.csproj b/src/Banquale/Banquale/Banquale.csproj index 3ae3d32..cc45e25 100644 --- a/src/Banquale/Banquale/Banquale.csproj +++ b/src/Banquale/Banquale/Banquale.csproj @@ -53,7 +53,6 @@ - @@ -73,7 +72,6 @@ - diff --git a/src/Banquale/Banquale/Test/AccountTest.cs b/src/Banquale/Banquale/Test/AccountTest.cs deleted file mode 100644 index 4b1afa4..0000000 --- a/src/Banquale/Banquale/Test/AccountTest.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using Model; - -namespace Banquale.Test -{ - public class AccountTest - { - public AccountTest() - { - Account account = new Account(2000000, "Men", "How are you ?"); - } - } -} - diff --git a/src/Banquale/Banquale/Views/BalancePage.xaml.cs b/src/Banquale/Banquale/Views/BalancePage.xaml.cs index 09bf5c8..a041029 100644 --- a/src/Banquale/Banquale/Views/BalancePage.xaml.cs +++ b/src/Banquale/Banquale/Views/BalancePage.xaml.cs @@ -37,14 +37,14 @@ public partial class BalancePage : ContentPage return; } - Transactions transactions = Mgr.SelectedAccount.TransactionsList.FirstOrDefault(u => u.Id == TransactionId); - if (transactions == null) + Transaction transaction = Mgr.SelectedAccount.TransactionsList.FirstOrDefault(u => u.Id == TransactionId); + if (transaction == null) { await DisplayAlert("Erreur", "La transaction n'éxiste pas !", "OK"); return; } - Mgr.SelectedTransaction = transactions; + Mgr.SelectedTransaction = transaction; await Navigation.PushModalAsync(new TransactionsPage()); diff --git a/src/Banquale/Model/Account.cs b/src/Banquale/Model/Account.cs index 36fbfb4..09372d3 100644 --- a/src/Banquale/Model/Account.cs +++ b/src/Banquale/Model/Account.cs @@ -1,26 +1,42 @@ -using System; +/// \file +/// \brief Définition de la classe Account. +/// \author Votre nom + +using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Linq; using System.Runtime.Serialization; -using System; using System.Threading.Tasks; namespace Model { + /// + /// Représente un compte bancaire. + /// [DataContract] public class Account : INotifyPropertyChanged, IEquatable { - public event PropertyChangedEventHandler PropertyChanged; - + /// + /// Événement déclenché lorsqu'une propriété est modifiée. + /// + public event PropertyChangedEventHandler PropertyChanged; + + /// + /// Déclenche l'événement PropertyChanged pour une propriété donnée. + /// + /// Nom de la propriété modifiée. void OnPropertyChanged(string propertyName) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } + /// + /// Obtient ou définit le solde du compte. + /// [DataMember] - public Double Balance + public Double Balance { get => balance; set @@ -34,9 +50,11 @@ namespace Model [DataMember] private Double balance; - + /// + /// Obtient ou définit le nom du titulaire du compte. + /// [DataMember] - public string Name + public string Name { get => name; set @@ -50,9 +68,11 @@ namespace Model [DataMember] private string name; - + /// + /// Obtient ou définit le numéro IBAN du compte. + /// [DataMember] - public string IBAN + public string IBAN { get => iban; set @@ -66,6 +86,9 @@ namespace Model [DataMember] private string iban; + /// + /// Obtient une version masquée du numéro IBAN du compte. + /// [DataMember] public string IBANHide { @@ -81,26 +104,41 @@ namespace Model [DataMember] private string ibanHide; + /// + /// Obtient ou définit la liste des transactions effectuées sur le compte. + /// [DataMember] - public List TransactionsList { get; set; } = new List(); - + public List TransactionsList { get; set; } = new List(); + + /// + /// Effectue une transaction entre le compte courant et un compte tiers. + /// + /// Compte tiers impliqué dans la transaction. + /// Somme de la transaction. + /// Type de transaction (débit ou crédit). + /// Numéro de la transaction. public void DoTransactions(Account involvedAccount, Double sum, bool type, int nb) { if (type) // si le type est True => c'est un débit, on doit donc ajouter la transaction pour l'autre compte { - Transactions transaction = new Transactions(type, sum, involvedAccount, nb, DateTime.Now); + Transaction transaction = new Transaction(type, sum, involvedAccount, nb, DateTime.Now); TransactionsList.Add(transaction); - Balance = Balance-sum; - involvedAccount.DoTransactions(this, sum, !type, nb+1); + Balance = Balance - sum; + involvedAccount.DoTransactions(this, sum, !type, nb + 1); } - else // Sinon, c'est un crédit, on a juste à l'ajouter ànotre liste de transactions + else // Sinon, c'est un crédit, on a juste à l'ajouter à notre liste de transactions { - TransactionsList.Add(new Transactions(type, sum, involvedAccount, nb, DateTime.Now)); - Balance = Balance+sum; + TransactionsList.Add(new Transaction(type, sum, involvedAccount, nb, DateTime.Now)); + Balance = Balance + sum; } - } + /// + /// Constructeur de la classe Account. + /// + /// Solde initial du compte. + /// Nom du titulaire du compte. + /// Numéro IBAN du compte. public Account(Double balance, string name, string iban) { Balance = balance; @@ -109,44 +147,29 @@ namespace Model IBANHide = IBANToString(); } - //public static void DoTransactions(string name, string iban, string sum) - //{ - // Debug.WriteLine(name); - // Debug.WriteLine(iban); - // Debug.WriteLine(sum); - // Debug.WriteLine("Transaction successed !"); - - //public bool DoRequest(string name, string IBAN, float sum) - //{ - // List transactions.add(sum); - // if () - // return true; - //} - - //public void AskForHelp(string type, string type2, string message) - //{ - // Console.WriteLine("Help button pressed !"); - //} - + /// + /// Demande d'aide pour un compte. + /// + /// Sujet de la demande d'aide. + /// Description de la demande d'aide. + /// Un message d'aide. public static Message AskForHelp(string subject, string description) { Debug.WriteLine(subject); Debug.WriteLine(description); Debug.WriteLine("Help button pressed !"); - //throw new NotImplementedException(); Message message = new Message(subject, description); return message; } - public static void DoRequest(string name, string iBAN, string sum) - { - throw new NotImplementedException(); - } - + /// + /// Convertit le numéro IBAN en une version masquée. + /// + /// Le numéro IBAN masqué. public string IBANToString() { char[] res = IBAN.ToCharArray(); - for (int i = 5; i< IBAN.Length - 4; i++ ) + for (int i = 5; i < IBAN.Length - 4; i++) { if (res[i] == ' ') continue; @@ -155,12 +178,21 @@ namespace Model return new string(res); } + /// + /// Vérifie si deux comptes sont égaux en comparant leur numéro IBAN. + /// + /// Compte à comparer. + /// True si les comptes sont égaux, False sinon. public bool Equals(Account other) { - if(other == null) return false; + if (other == null) return false; else return other.IBAN.Equals(IBAN); } + /// + /// Obtient le code de hachage du compte basé sur le numéro IBAN. + /// + /// Le code de hachage. public override int GetHashCode() { return IBAN.GetHashCode(); diff --git a/src/Banquale/Model/Category.cs b/src/Banquale/Model/Category.cs deleted file mode 100644 index ce0c3a3..0000000 --- a/src/Banquale/Model/Category.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; -namespace Model -{ - public class Category - { - - public Category() - { - } - } -} - diff --git a/src/Banquale/Model/Consultant.cs b/src/Banquale/Model/Consultant.cs index 5b833ff..b89a5cb 100644 --- a/src/Banquale/Model/Consultant.cs +++ b/src/Banquale/Model/Consultant.cs @@ -1,17 +1,32 @@ -using System; +/// \file +/// \brief Définition de la classe Consultant. +/// \author Votre nom + +using System; using System.Runtime.Serialization; namespace Model { + /// + /// Représente un consultant. + /// [DataContract] public class Consultant : Person - { + { + /// + /// Liste des messages du consultant. + /// [DataMember] public List MessagesList = new List(); + /// + /// Constructeur de la classe Consultant. + /// + /// Nom du consultant. + /// Prénom du consultant. + /// Mot de passe du consultant. public Consultant(string name, string firstName, string password) : base(name, firstName, password) { - } - } + } + } } - diff --git a/src/Banquale/Model/Customer.cs b/src/Banquale/Model/Customer.cs index 64186da..f2f6184 100644 --- a/src/Banquale/Model/Customer.cs +++ b/src/Banquale/Model/Customer.cs @@ -1,28 +1,34 @@ -using System; +/// \file +/// \brief Définition de la classe Customer. +/// \author Votre nom + +using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; -using System; -using System.Threading.Tasks; - namespace Model { + /// + /// Représente un client. + /// [DataContract] public class Customer : Person { + /// + /// Liste des comptes du client. + /// [DataMember] public List AccountsList { get; private set; } = new List(); - //private uint NbAccounts { get; set; } = AccountsList.Count; - - + /// + /// Constructeur de la classe Customer. + /// + /// Nom du client. + /// Prénom du client. + /// Mot de passe du client. public Customer(string name, string firstName, string password) : base(name, firstName, password) - {} - - - + { } } - } diff --git a/src/Banquale/Model/IPersistenceManager.cs b/src/Banquale/Model/IPersistenceManager.cs index afff14b..20bbc71 100644 --- a/src/Banquale/Model/IPersistenceManager.cs +++ b/src/Banquale/Model/IPersistenceManager.cs @@ -1,15 +1,28 @@ -using System; -using System.Collections.Generic; -using System.Linq; +/// \file +/// \brief Définition de l'interface IPersistenceManager. +/// \author Votre nom + using System; -using System.Threading.Tasks; +using System.Collections.Generic; namespace Model { + /// + /// Interface pour la gestion de la persistance des données. + /// public interface IPersistenceManager { - public (List, Consultant) DataLoad(); + /// + /// Charge les données depuis une source de persistance. + /// + /// Un tuple contenant la liste des clients et le consultant. + (List, Consultant) DataLoad(); + /// + /// Enregistre les données dans une source de persistance. + /// + /// La liste des clients à enregistrer. + /// Le consultant à enregistrer. void DataSave(List cu, Consultant co); } } diff --git a/src/Banquale/Model/Manager.cs b/src/Banquale/Model/Manager.cs index 15b1110..305498c 100644 --- a/src/Banquale/Model/Manager.cs +++ b/src/Banquale/Model/Manager.cs @@ -1,55 +1,81 @@ -using System; +/// \file +/// \brief Définition de la classe Manager. +/// \author Votre nom + +using System; +using System.Collections.Generic; using System.ComponentModel; using System.Runtime.CompilerServices; using System.Runtime.Serialization; namespace Model { - [DataContract] + /// + /// Classe représentant le gestionnaire du système. + /// + [DataContract] public class Manager : INotifyPropertyChanged - { + { public event PropertyChangedEventHandler PropertyChanged; void OnPropertyChanged([CallerMemberName] string propertyName = null) - => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); + => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); + /// + /// Liste des clients gérés par le gestionnaire. + /// [DataMember] - public List CustomersList { get; private set; } // devient un set + public List CustomersList { get; private set; } // devient un set + /// + /// Consultant assigné au gestionnaire. + /// [DataMember] public Consultant Consultant { get; private set; } // 1 SEUL consultant - public bool IsConsultant { get; set; } = false; + /// + /// Indique si le gestionnaire est un consultant. + /// + public bool IsConsultant { get; set; } = false; + /// + /// Client sélectionné par le gestionnaire. + /// public Customer SelectedCustomer - { - get => selectedCustomer; - set - { - if (selectedCustomer == value) - return; - selectedCustomer = value; - OnPropertyChanged(); - } - } - - private Customer selectedCustomer; - - public Account SelectedAccount - { - get => selectedAccount; - set - { + { + get => selectedCustomer; + set + { + if (selectedCustomer == value) + return; + selectedCustomer = value; + OnPropertyChanged(); + } + } + + private Customer selectedCustomer; + + /// + /// Compte sélectionné par le gestionnaire. + /// + public Account SelectedAccount + { + get => selectedAccount; + set + { if (selectedAccount == value) return; selectedAccount = value; OnPropertyChanged(); } - } + } - private Account selectedAccount; + private Account selectedAccount; - public Transactions SelectedTransaction + /// + /// Transaction sélectionnée par le gestionnaire. + /// + public Transaction SelectedTransaction { get => selectedTransaction; set @@ -61,52 +87,70 @@ namespace Model } } - private Transactions selectedTransaction; - - + private Transaction selectedTransaction; + /// + /// Gestionnaire de persistance utilisé par le gestionnaire. + /// public IPersistenceManager Persistence { get; set; } - public Manager(IPersistenceManager persistence) - { + /// + /// Constructeur du gestionnaire avec un gestionnaire de persistance spécifié. + /// + /// Gestionnaire de persistance. + public Manager(IPersistenceManager persistence) + { CustomersList = new List(); - Persistence = persistence; - } + Persistence = persistence; + } + /// + /// Constructeur du gestionnaire sans gestionnaire de persistance. + /// public Manager() { CustomersList = new List(); } - public bool AddCustomer(Customer MyCustomer) - { - CustomersList.Add(MyCustomer); - return true; - } + /// + /// Ajoute un client à la liste des clients gérés par le gestionnaire. + /// + /// Client à ajouter. + /// True si l'ajout est réussi, sinon False. + public bool AddCustomer(Customer myCustomer) + { + CustomersList.Add(myCustomer); + return true; + } - public Customer GetCustomer(int place) { - return CustomersList[place]; - } + /// + /// Récupère le client à la position spécifiée dans la liste des clients. + /// + /// Position du client. + /// Le client à la position spécifiée. + public Customer GetCustomer(int place) + { + return CustomersList[place]; + } + /// + /// Enregistre les données dans la source de persistance. + /// public void DataSave() { Persistence.DataSave(CustomersList, Consultant); } + /// + /// Charge les données depuis la source de persistance. + /// public void DataLoad() - { - var data = Persistence.DataLoad(); - - CustomersList.AddRange(data.Item1); - - /*foreach (var j in data.Item1) - { - CustomersList.Add(j); - }*/ + { + var data = Persistence.DataLoad(); - Consultant = data.Item2; - } + CustomersList.AddRange(data.Item1); + Consultant = data.Item2; + } } } - diff --git a/src/Banquale/Model/Message.cs b/src/Banquale/Model/Message.cs index bc7d860..44133dd 100644 --- a/src/Banquale/Model/Message.cs +++ b/src/Banquale/Model/Message.cs @@ -1,23 +1,39 @@ -using System; +/// \file +/// \brief Définition de la classe Message. +/// \author Votre nom + +using System; using System.Runtime.Serialization; namespace Model { + /// + /// Classe représentant un message. + /// [DataContract] public class Message - { + { + /// + /// Sujet du message. + /// [DataMember] public string Subject { get; private set; } + /// + /// Description du message. + /// [DataMember] public string Description { get; private set; } + /// + /// Constructeur de la classe Message. + /// + /// Sujet du message. + /// Description du message. public Message(string subject, string description) { Subject = subject; Description = description; } - } } - diff --git a/src/Banquale/Model/Model.csproj b/src/Banquale/Model/Model.csproj index 52aa65f..4658cbf 100644 --- a/src/Banquale/Model/Model.csproj +++ b/src/Banquale/Model/Model.csproj @@ -6,10 +6,4 @@ enable - - - - - - diff --git a/src/Banquale/Model/Person.cs b/src/Banquale/Model/Person.cs index 2f64e7b..59e8a59 100644 --- a/src/Banquale/Model/Person.cs +++ b/src/Banquale/Model/Person.cs @@ -1,27 +1,55 @@ -using System; +/// \file +/// \brief Définition de la classe Person. +/// \author Votre nom + +using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; -using System; -using System.Threading.Tasks; - namespace Model { + /// + /// Classe représentant une personne. + /// [DataContract] public class Person { + /// + /// Nom de la personne. + /// [DataMember] public string Name { get; private set; } + + /// + /// Prénom de la personne. + /// [DataMember] public string FirstName { get; private set; } + + /// + /// Identifiant de la personne. + /// [DataMember] public uint Id { get; private set; } + /// + /// Compteur d'identifiants. + /// public static uint id { get; set; } = 0; + + /// + /// Mot de passe de la personne. + /// [DataMember] public string Password { get; private set; } + /// + /// Constructeur de la classe Person. + /// + /// Nom de la personne. + /// Prénom de la personne. + /// Mot de passe de la personne. public Person(string name, string firstName, string password) { Name = name; @@ -31,5 +59,4 @@ namespace Model id++; } } - } diff --git a/src/Banquale/Model/Transactions.cs b/src/Banquale/Model/Transaction.cs similarity index 58% rename from src/Banquale/Model/Transactions.cs rename to src/Banquale/Model/Transaction.cs index 9e3d9d5..c74c7f4 100644 --- a/src/Banquale/Model/Transactions.cs +++ b/src/Banquale/Model/Transaction.cs @@ -3,35 +3,51 @@ using System.Runtime.Serialization; namespace Model { + /// + /// Represents a transaction. + /// [DataContract(IsReference = true)] - public class Transactions : INotifyPropertyChanged + public class Transaction : INotifyPropertyChanged { + /// + /// Occurs when a property value changes. + /// + public event PropertyChangedEventHandler PropertyChanged; void OnPropertyChanged(string propertyName) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } + + /// + /// Gets the unique identifier of the transaction. + /// [DataMember] public int Id { get; private set; } + /// + /// Gets or sets the type of the transaction (debit or credit). + /// [DataMember] public bool Type - { + { get => type; set { - if(type == value) + if (type == value) return; type = value; OnPropertyChanged(nameof(Type)); } } [DataMember] - private bool type; + /// + /// Gets or sets the sum of the transaction. + /// [DataMember] - public Double Sum + public double Sum { get => sum; set @@ -43,8 +59,11 @@ namespace Model } } [DataMember] - private Double sum; + private double sum; + /// + /// Gets or sets the account(s) involved in the transaction. + /// [DataMember] public Account InvolvedAccounts { @@ -60,6 +79,9 @@ namespace Model [DataMember] private Account involvedAccounts; + /// + /// Gets or sets the category of the transaction. + /// [DataMember] public string Category { @@ -75,8 +97,11 @@ namespace Model [DataMember] private string category; + /// + /// Gets or sets the date of the transaction. + /// [DataMember] - public DateTime Date + public DateTime Date { get => date; set @@ -90,17 +115,21 @@ namespace Model [DataMember] private DateTime date; - public Transactions(bool type, Double sum, Account involvedAccounts/*, string category*/, int id, DateTime date) + /// + /// Initializes a new instance of the class. + /// + /// The type of the transaction (debit or credit). + /// The sum of the transaction. + /// The account(s) involved in the transaction. + /// The unique identifier of the transaction. + /// The date of the transaction. + public Transaction(bool type, double sum, Account involvedAccounts, int id, DateTime date) { Type = type; Sum = sum; Id = id; InvolvedAccounts = involvedAccounts; - //Category = category; Date = date; } - - - public event PropertyChangedEventHandler PropertyChanged; } } diff --git a/src/Banquale/UnitTest/AccountTest.cs b/src/Banquale/UnitTest/AccountTest.cs new file mode 100644 index 0000000..40b87e1 --- /dev/null +++ b/src/Banquale/UnitTest/AccountTest.cs @@ -0,0 +1,70 @@ +/// \file +/// \brief Fichier de test pour la classe Account. +/// \author Votre nom + +using Model; +using System; +using System.ComponentModel; +using System.Diagnostics; +using System.Runtime.Serialization; + +namespace UnitTest +{ + /// + /// Classe de test pour la classe Account. + /// + class AccountTest + { + /// + /// Méthode principale du test. + /// + /// Arguments de ligne de commande. + static void Main(string[] args) + { + // 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 + Console.WriteLine("Compte 1:"); + Console.WriteLine($"Nom: {account1.Name}"); + Console.WriteLine($"IBAN: {account1.IBANHide}"); + Console.WriteLine($"Solde: {account1.Balance}"); + + Console.WriteLine("\nCompte 2:"); + Console.WriteLine($"Nom: {account2.Name}"); + Console.WriteLine($"IBAN: {account2.IBANHide}"); + Console.WriteLine($"Solde: {account2.Balance}"); + + // Effectuer une transaction entre les comptes + double amount = 200; + Console.WriteLine($"\nEffectuer une transaction de {amount} du compte 1 vers le compte 2..."); + account1.DoTransactions(account2, amount, true, 1); + + // Affichage des informations des comptes après la transaction + Console.WriteLine("\nAprès la transaction:"); + Console.WriteLine("Compte 1:"); + Console.WriteLine($"Nom: {account1.Name}"); + Console.WriteLine($"IBAN: {account1.IBANHide}"); + Console.WriteLine($"Solde: {account1.Balance}"); + + Console.WriteLine("\nCompte 2:"); + Console.WriteLine($"Nom: {account2.Name}"); + Console.WriteLine($"IBAN: {account2.IBANHide}"); + Console.WriteLine($"Solde: {account2.Balance}"); + + // Demander de l'aide + string helpSubject = "Besoin d'aide"; + string helpDescription = "Je rencontre un problème avec mon compte."; + Message helpMessage = Account.AskForHelp(helpSubject, helpDescription); + Console.WriteLine($"\nDemande d'aide envoyée : {helpMessage}"); + + // Comparaison de deux comptes + Console.WriteLine("\nComparaison des comptes..."); + bool areEqual = account1.Equals(account2); + Console.WriteLine($"Les comptes sont-ils égaux ? {areEqual}"); + + Console.ReadLine(); + } + } +} diff --git a/src/Banquale/UnitTest/ConsultantTest.cs b/src/Banquale/UnitTest/ConsultantTest.cs new file mode 100644 index 0000000..c1bad5f --- /dev/null +++ b/src/Banquale/UnitTest/ConsultantTest.cs @@ -0,0 +1,11 @@ +using System; +namespace UnitTest +{ + public class ConsultantTest + { + public ConsultantTest() + { + } + } +} + diff --git a/src/Banquale/Banquale/Test/CustomerTest.cs b/src/Banquale/UnitTest/CustomerTest.cs similarity index 78% rename from src/Banquale/Banquale/Test/CustomerTest.cs rename to src/Banquale/UnitTest/CustomerTest.cs index 62bcf9b..ab3bbd2 100644 --- a/src/Banquale/Banquale/Test/CustomerTest.cs +++ b/src/Banquale/UnitTest/CustomerTest.cs @@ -1,5 +1,5 @@ using System; -namespace Banquale.Test +namespace UnitTest { public class CustomerTest { diff --git a/src/Banquale/Banquale/Test/ManagerTest.cs b/src/Banquale/UnitTest/ManagerTest.cs similarity index 77% rename from src/Banquale/Banquale/Test/ManagerTest.cs rename to src/Banquale/UnitTest/ManagerTest.cs index 75c294e..aaf7cbb 100644 --- a/src/Banquale/Banquale/Test/ManagerTest.cs +++ b/src/Banquale/UnitTest/ManagerTest.cs @@ -1,5 +1,5 @@ using System; -namespace Banquale.Test +namespace UnitTest { public class ManagerTest { diff --git a/src/Banquale/UnitTest/MessageTest.cs b/src/Banquale/UnitTest/MessageTest.cs new file mode 100644 index 0000000..00f4ee9 --- /dev/null +++ b/src/Banquale/UnitTest/MessageTest.cs @@ -0,0 +1,28 @@ +using Model; +using System; + +namespace UnitTest +{ + /// + /// Classe de test pour la classe Message. + /// + public class MessageTest + { + /// + /// Point d'entrée du programme de test. + /// + /// Arguments de ligne de commande. + static void Main(string[] args) + { + // Création d'un message + Message message = new Message("Important", "Ceci est un message important."); + + // Affichage des informations du message + Console.WriteLine("Message:"); + Console.WriteLine($"Sujet: {message.Subject}"); + Console.WriteLine($"Description: {message.Description}"); + + Console.ReadLine(); + } + } +} diff --git a/src/Banquale/UnitTest/PersonTest.cs b/src/Banquale/UnitTest/PersonTest.cs new file mode 100644 index 0000000..86f7ee0 --- /dev/null +++ b/src/Banquale/UnitTest/PersonTest.cs @@ -0,0 +1,11 @@ +using System; +namespace UnitTest +{ + public class PersonTest + { + public PersonTest() + { + } + } +} + diff --git a/src/Banquale/UnitTest/TransactionTest.cs b/src/Banquale/UnitTest/TransactionTest.cs new file mode 100644 index 0000000..3de5643 --- /dev/null +++ b/src/Banquale/UnitTest/TransactionTest.cs @@ -0,0 +1,38 @@ +/// \file +/// \brief Fichier de test pour la classe Transaction. +/// \author Votre nom + +using Model; +using System; + +namespace UnitTest +{ + /// + /// Classe de test pour la classe Transaction. + /// + class TransactionTest + { + /// + /// Méthode principale du test. + /// + /// Arguments de ligne de commande. + static void Main(string[] args) + { + // Création d'un compte + Account account = new Account(1000, "John Doe", "FR123456789"); + + // Création d'une transaction + Transaction transaction = new Transaction(true, 200, account, 1, DateTime.Now); + + // Affichage des informations de la transaction + Console.WriteLine("Transaction:"); + Console.WriteLine($"Type: {(transaction.Type ? "Débit" : "Crédit")}"); + Console.WriteLine($"Somme: {transaction.Sum}"); + Console.WriteLine($"Compte impliqué: {transaction.InvolvedAccounts.Name}"); + Console.WriteLine($"Catégorie: {transaction.Category}"); + Console.WriteLine($"Date: {transaction.Date}"); + + Console.ReadLine(); + } + } +} diff --git a/src/Banquale/UnitTest/UnitTest.csproj b/src/Banquale/UnitTest/UnitTest.csproj index ce001a9..a355ab2 100644 --- a/src/Banquale/UnitTest/UnitTest.csproj +++ b/src/Banquale/UnitTest/UnitTest.csproj @@ -16,10 +16,6 @@ runtime; build; native; contentfiles; analyzers; buildtransitive all - - runtime; build; native; contentfiles; analyzers; buildtransitive - all -