C'etais un test qui marche mdr

Final_Appli
Tony Fages 2 years ago
parent 1da7e42027
commit 89add0ae76

@ -0,0 +1,45 @@
using System;
using System.Runtime.Serialization;
namespace ParionsCuite.Modeles
{
[DataContract]
public class Autre
{
[DataMember]
public string Nom { get; set; }
[DataMember]
public int Quantite { get; set; }
public Autre(string nom, int qu)
{
Nom = nom;
Quantite = qu;
}
public Autre()
{
}
public override bool Equals(object obj)
{
if (ReferenceEquals(obj, null)) return false;
if (ReferenceEquals(obj, this)) return true;
if (obj.GetType() != this.GetType()) return false;
return Equals(obj as Autre);
}
public override string ToString()
{
return $"nom : {Nom} \n";
}
public override int GetHashCode()
{
return HashCode.Combine(Nom);
}
}
}

@ -0,0 +1,46 @@
using System;
using System.Runtime.Serialization;
using System.Security.Principal;
namespace ParionsCuite.Modeles
{
[DataContract]
public class Boisson
{
[DataMember]
public string Nom { get; set; }
[DataMember]
public int Quantite { get; set; }
public Boisson(string nom, int qu)
{
Nom = nom;
Quantite = qu;
}
public Boisson()
{
}
public override bool Equals(object obj)
{
if (ReferenceEquals(obj, null)) return false;
if (ReferenceEquals(obj, this)) return true;
if (obj.GetType() != this.GetType()) return false;
return Equals(obj as Boisson);
}
public override string ToString()
{
return $"nom : {Nom} \n";
}
public override int GetHashCode()
{
return HashCode.Combine(Nom);
}
}
}

@ -0,0 +1,7 @@
namespace Modeles
{
public class Class1
{
}
}

@ -0,0 +1,163 @@
using ParionsCuite;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace ParionsCuite.Modeles
{
[DataContract]
public class Evenement : INotifyPropertyChanged
{
public event PropertyChangedEventHandler? PropertyChanged;
void OnPropertyChanged([CallerMemberName] string propertyName = null)
=> PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
/* Déclaration */
[DataMember]
public string Nom { get; private set; }
[DataMember]
public string Date { get; private set; }
[DataMember]
public string Lieu { get; private set; }
[DataMember]
public string Heure { get; private set; }
[DataMember]
public Participation Participation { get; private set; }
[DataMember]
public List<Inviter> ListInviter { get; private set; }
public event Action<Parier> PariAdd;
[DataMember]
private ObservableCollection<Parier> listParier;
public ObservableCollection<Parier> ListParier
{
get { return listParier; }
set
{
if (listParier != value)
{
listParier = value;
OnPropertyChanged();
OnPariAdded(value.LastOrDefault()); // Appel de la fonction après ajout d'un événement
}
}
}
private void OnPariAdded(Parier parier)
{
// Logique à exécuter lorsque un événement est ajouté
Debug.WriteLine("Événement ajouté : ");
}
public bool Ajout_Pari(Parier pari)
{
ListParier.Add(pari);
OnPropertyChanged(nameof(Parier));
PariAdd?.Invoke(pari);
return true;
}
/* Constructeur */
public Evenement(string nom, string date, string lieu, string heure)
{
Nom = nom;
Date = date;
Lieu = lieu;
Heure = heure;
ListInviter = new List<Inviter>();
ListParier = new ObservableCollection<Parier>();
Participation = new Participation();
}
public Evenement(string nom, string date, string lieu, string heure, Participation participation)
{
Nom = nom;
Date = date;
Lieu = lieu;
Heure = heure;
Participation = participation;
ListInviter = new List<Inviter>();
ListParier = new ObservableCollection<Parier>();
}
public Evenement(List<Inviter> inviters, List<Participation> participations, List<Parier> pariers)
{
}
/* Méthode Inviter */
public bool Ajouter_inviter(Inviter I)
{
ListInviter.Add(I);
foreach (Inviter i in ListInviter)
{
if (i == I)
return true;
}
return false;
}
public bool Supprimer_inviter(Inviter inviter)
{
return ListInviter.Remove(inviter);
}
public int LenListInvite(List<Inviter> list)
{
int len = 0;
foreach (Inviter inviter in list)
{
len++;
}
return len;
}
public List<Inviter> ReturnListInvite()
{
return ListInviter;
}
/* Méthode Parie */
public bool Ajouter_parie(Parier parier)
{
ListParier.Add(parier);
foreach (Parier p in ListParier)
{
if (p == parier)
return true;
}
return false;
}
public bool Supprimer_parie(Parier p)
{
return ListParier.Remove(p);
}
/* Setter */
public void SetEvenement(string nom, string date, string lieu, string heure)
{
Nom = nom;
Date = date;
Lieu = lieu;
Heure = heure;
return;
}
public override string ToString()
{
return $"Nom : {Nom} \nDate : {Date}\nLieu : {Lieu}\nHeure : {Heure} ";
}
}
}

@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
namespace ParionsCuite.Modeles
{
public interface IPersistanceManager
{
public ObservableCollection<Evenement> chargeDonnees();
public void sauvegardeDonnees(ObservableCollection<Evenement> evenements);
}
}

@ -0,0 +1,38 @@
using System;
using System.Runtime.Serialization;
namespace ParionsCuite.Modeles
{
[DataContract]
public class Inviter
{
[DataMember]
public string Nom { get; set; }
[DataMember]
public string Prenom { get; set; }
public Inviter(string nom, string prenom)
{
Nom = nom;
Prenom = prenom;
}
public Inviter(string prenom)
{
Prenom = prenom;
}
public Inviter()
{
}
public override string ToString()
{
return $"nom : {Nom}, prenom : {Prenom} \n";
}
}
}

@ -0,0 +1,123 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Threading.Tasks;
namespace ParionsCuite.Modeles
{
public class Manageur : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
public event Action<Evenement> EvenementAdded;
private ObservableCollection<Evenement> evenement;
public bool Value1;
public bool Value2;
public bool Value3;
void OnPropertyChanged([CallerMemberName] string propertyName = null)
=> PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
public ObservableCollection<Evenement> Evenement
{
get { return evenement; }
set
{
if (evenement != value)
{
evenement = value;
OnPropertyChanged();
OnEvenementAdded(value.LastOrDefault()); // Appel de la fonction après ajout d'un événement
}
}
}
private void OnEvenementAdded(Evenement evenement)
{
// Logique à exécuter lorsque un événement est ajouté
Debug.WriteLine("Événement ajouté : ");
}
public List<Inviter> Invites { get; set; }
public IPersistanceManager Persistance { get; set; }
public Manageur(IPersistanceManager Pers) {
Invites = new List<Inviter>();
Evenement = new ObservableCollection<Evenement>();
Persistance = Pers;
}
public Manageur()
{
Evenement = new ObservableCollection<Evenement>();
Invites = new List<Inviter>();
}
public Manageur(ObservableCollection<Evenement> evenements)
{
Evenement = evenements;
}
public bool Ajout_evenement(Evenement ev)
{
Evenement.Add(ev);
OnPropertyChanged(nameof(Evenement));
EvenementAdded?.Invoke(ev);
return true;
}
public bool Supprimer_evenement(Evenement ev)
{
return Evenement.Remove(ev);
}
public List<Inviter> AddInvite(Inviter invite1)
{
Invites.Add(invite1);
return Invites;
}
public List<Inviter> RemoveInviter(Inviter invite1)
{
Invites.Remove(invite1);
return Invites;
}
public int LenListInvite(List<Inviter> list)
{
int len = 0;
foreach (Inviter inviter in list)
{
len++;
}
return len;
}
public List<Inviter> ReturnListInvite()
{
return Invites;
}
public void Charge_Donnee()
{
var donnees = Persistance.chargeDonnees();
foreach (var donnee in donnees)
{
Evenement.Add(donnee);
}
}
public void Save_Data()
{
Persistance.sauvegardeDonnees(Evenement);
}
}
}

@ -0,0 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<Compile Remove="Class1.cs" />
</ItemGroup>
</Project>

@ -0,0 +1,46 @@
using System;
using System.Runtime.Serialization;
namespace ParionsCuite.Modeles
{
[DataContract]
public class Nourriture
{
[DataMember]
public string Nom { get; set; }
[DataMember]
public int Quantite { get; set; }
public Nourriture(string nom, int qu)
{
Nom = nom;
Quantite = qu;
}
public Nourriture()
{
}
public override bool Equals(object obj)
{
if (ReferenceEquals(obj, null)) return false;
if (ReferenceEquals(obj, this)) return true;
if (obj.GetType() != this.GetType()) return false;
return Equals(obj as Nourriture);
}
public override string ToString()
{
return $"nom : {Nom} \n";
}
public override int GetHashCode()
{
return HashCode.Combine(Nom);
}
}
}

@ -0,0 +1,35 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace ParionsCuite.Modeles
{
[DataContract]
public class Parier
{
[DataMember]
public Inviter i1;
[DataMember]
public Inviter i2;
public string But { get; private set; }
public string Enjeu { get; private set; }
public Parier(Inviter i1, Inviter i2, string but, string enjeu)
{
this.i1 = i1;
this.i2 = i2;
But = but;
Enjeu = enjeu;
}
public override string ToString()
{
return $"joueur n°1 : {i1}, \njoueur n°2 : {i2}, \nbut : {But}, enjeux : {Enjeu}";
}
}
}

@ -0,0 +1,162 @@
using Microsoft;
using ParionsCuite;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace ParionsCuite.Modeles
{
[DataContract]
public class Participation
{
[DataMember]
public List<Boisson> Boissons { get; private set; }
[DataMember]
public List<Nourriture> Nourriture { get; private set; }
[DataMember]
public List<Autre> Autre { get; private set; }
public Participation(List<Boisson> boisson, List<Nourriture> nourriture, List<Autre> autre)
{
Boissons = boisson;
Nourriture = nourriture;
Autre = autre;
}
public Participation()
{
Boissons = new List<Boisson>();
Nourriture = new List<Nourriture>();
Autre = new List<Autre>();
}
/* Boisson */
public bool Ajout_Boissons(Boisson boisson)
{
foreach (var obj in Boissons)
{
if (obj.Equals(boisson))
{
if (boisson.Quantite > 0)
{
obj.Quantite = obj.Quantite + boisson.Quantite;
return true;
}
return false;
}
}
Boissons.AddRange((IEnumerable<Boisson>)boisson);
return true;
}
public bool Sup_Boissons(Boisson boisson, int quantite)
{
foreach(var obj in Boissons)
{
if (obj.Equals(boisson))
if (quantite > 0)
{
if (quantite >= boisson.Quantite)
{
Boissons.Remove(boisson);
return true;
}
obj.Quantite = obj.Quantite + boisson.Quantite;
return true;
}
return false;
}
return false;
}
/* Nourriture */
public bool Ajout_Nourriture(Nourriture food)
{
foreach (var obj in Nourriture)
{
if (obj.Equals(food))
{
if (food.Quantite > 0)
{
obj.Quantite = obj.Quantite + food.Quantite;
return true;
}
return false;
}
}
Nourriture.AddRange((IEnumerable<Nourriture>)food);
return true;
}
public bool Sup_Nourriture(Nourriture food, int quantite)
{
foreach (var obj in Boissons)
{
if (obj.Equals(food))
if (quantite > 0)
{
if (quantite >= food.Quantite)
{
Nourriture.Remove(food);
return true;
}
obj.Quantite = obj.Quantite + food.Quantite;
return true;
}
return false;
}
return false;
}
/* Autre */
public bool Ajout_Autre(Autre autre)
{
foreach (var obj in Autre)
{
if (obj.Equals(autre))
{
if (autre.Quantite > 0)
{
obj.Quantite = obj.Quantite + autre.Quantite;
return true;
}
return false;
}
}
Autre.AddRange((IEnumerable<Autre>)autre);
return true;
}
public bool Sup_Autre(Autre autre, int quantite)
{
foreach (var obj in Autre)
{
if (obj.Equals(autre))
if (quantite > 0)
{
if (quantite >= autre.Quantite)
{
Autre.Remove(autre);
return true;
}
obj.Quantite = obj.Quantite + autre.Quantite;
return true;
}
return false;
}
return false;
}
}
}

@ -5,6 +5,10 @@ VisualStudioVersion = 17.0.31611.283
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ParionsCuite", "ParionsCuite\ParionsCuite.csproj", "{695ECD3A-15DB-4B29-BC9D-E8CC87D92900}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Modeles", "Modeles\Modeles.csproj", "{F96C29D3-33A7-4230-A1C7-799114865D52}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestParionsCuite", "TestParionsCuite\TestParionsCuite.csproj", "{0978D34C-3D5E-4863-B40C-55A38C6A2BBE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -17,6 +21,14 @@ Global
{695ECD3A-15DB-4B29-BC9D-E8CC87D92900}.Release|Any CPU.ActiveCfg = Release|Any CPU
{695ECD3A-15DB-4B29-BC9D-E8CC87D92900}.Release|Any CPU.Build.0 = Release|Any CPU
{695ECD3A-15DB-4B29-BC9D-E8CC87D92900}.Release|Any CPU.Deploy.0 = Release|Any CPU
{F96C29D3-33A7-4230-A1C7-799114865D52}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F96C29D3-33A7-4230-A1C7-799114865D52}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F96C29D3-33A7-4230-A1C7-799114865D52}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F96C29D3-33A7-4230-A1C7-799114865D52}.Release|Any CPU.Build.0 = Release|Any CPU
{0978D34C-3D5E-4863-B40C-55A38C6A2BBE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0978D34C-3D5E-4863-B40C-55A38C6A2BBE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0978D34C-3D5E-4863-B40C-55A38C6A2BBE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0978D34C-3D5E-4863-B40C-55A38C6A2BBE}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

@ -45,11 +45,17 @@
<MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
</ItemGroup>
<ItemGroup>
<AndroidResource Remove="Modeles\**" />
<AndroidResource Remove="Views\Participations\NewFolder\**" />
<Compile Remove="Modeles\**" />
<Compile Remove="Views\Participations\NewFolder\**" />
<EmbeddedResource Remove="Modeles\**" />
<EmbeddedResource Remove="Views\Participations\NewFolder\**" />
<MauiCss Remove="Modeles\**" />
<MauiCss Remove="Views\Participations\NewFolder\**" />
<MauiXaml Remove="Modeles\**" />
<MauiXaml Remove="Views\Participations\NewFolder\**" />
<None Remove="Modeles\**" />
<None Remove="Views\Participations\NewFolder\**" />
</ItemGroup>
<ItemGroup>
@ -100,10 +106,8 @@
<ItemGroup>
<Folder Include="Views\Ajout_Paris\" />
<Folder Include="Views\Participations\Autre\" />
<Folder Include="Modeles\" />
<Folder Include="Stub\" />
</ItemGroup>
<ItemGroup />
<ItemGroup Condition="$(VisualStudioVersion) == '17.0'">
<Reference Include="Microsoft.Data.Tools.Schema.Sql, Version=16.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>$(SSDTPath)\Microsoft.Data.Tools.Schema.Sql.dll</HintPath>
@ -118,6 +122,9 @@
<Private>True</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Modeles\Modeles.csproj" />
</ItemGroup>
<PropertyGroup>
<SsdtUnitTestVersion>3.1</SsdtUnitTestVersion>
</PropertyGroup>

@ -0,0 +1,29 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.3.2" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="coverlet.collector" Version="3.1.2">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Modeles\Modeles.csproj" />
</ItemGroup>
</Project>

@ -0,0 +1,17 @@
using ParionsCuite.Modeles;
namespace TestParionsCuite
{
public class UnitTest1
{
[Fact]
public void Test1()
{
Manageur manageur = new Manageur();
if (manageur == null)
{
return;
}
}
}
}
Loading…
Cancel
Save