示例#1
0
        [TestMethod]//Deuxième test vitesse et angle de la voiture en mouvement qui accelere à droite
        public void TestAccelerationDroiteDepartVitessesDifferentes()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Vitesse = 15.0F;
            voiture.Accelerer();
            voiture.TournerDroite();

            Assert.AreEqual(voiture.Angle, 0.151, 1e-6);
            Assert.AreEqual(voiture.Vitesse, 15.1, 1e-6);
        }
示例#2
0
        [TestMethod]//Test vitesse et angle de la voiture en mouvement qui accelere à droite
        public void TestAccelerationDroiteDepartMouvement()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Vitesse = 5.0F;
            voiture.Accelerer();
            voiture.TournerDroite();

            Assert.AreEqual(voiture.Angle, 0.051, 1e-6);
            Assert.AreEqual(voiture.Vitesse, 5.1, 1e-6);
        }
示例#3
0
        [TestMethod]//Test vitesse et angle de la voiture en mouvement negatif qui accelere à droite
        public void TestAccelerationDroiteDepartVitesseNegative()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Vitesse = -5.0F;
            voiture.Accelerer();
            voiture.TournerDroite();

            Assert.AreEqual(voiture.Angle, -0.049, 1e-6);
            Assert.AreEqual(voiture.Vitesse, -4.9, 1e-6);
        }
示例#4
0
        [TestMethod]//Test vitesse et angle de la voiture arretee qui decelere à droite
        public void TestFrottementDroiteDepartArrete()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Accelerer();
            voiture.TournerDroite();
            voiture.Ralentir();

            Assert.AreEqual(voiture.Angle, 0.001, 1e-6);
            Assert.AreEqual(voiture.Vitesse, 0.08, 1e-6);
        }
示例#5
0
        [TestMethod]//Test vitesse et angle de la voiture arretee qui freine à droite
        public void TestFreinageDroiteDepartArrete()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Accelerer();
            voiture.TournerDroite();
            voiture.Freiner();

            Assert.AreEqual(voiture.Angle, 0.001, 1e-6);
            Assert.AreEqual(voiture.Vitesse, -0.05, 1e-6);
        }
示例#6
0
        public IHttpActionResult GetVoiture(int id)
        {
            Voiture voiture = db.Voitures.Find(id);

            if (voiture == null)
            {
                return(NotFound());
            }

            return(Ok(voiture));
        }
示例#7
0
        [TestMethod]//Deuxième test vitesse et angle de la voiture en mouvement qui decelere à gauche
        public void TestFrottementGaucheDepartVitessesDifferentes()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Vitesse = 15.0F;
            voiture.Accelerer();
            voiture.TournerGauche();
            voiture.Ralentir();

            Assert.AreEqual(voiture.Angle, -0.151, 1e-6);
            Assert.AreEqual(voiture.Vitesse, 15.08, 1e-6);
        }
示例#8
0
        [TestMethod]//Test vitesse et angle de la voiture en mouvement negatif qui decelere à gauche
        public void TestFrottementGaucheDepartVitesseNegative()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Vitesse = -5.0F;
            voiture.Accelerer();
            voiture.TournerGauche();
            voiture.Ralentir();

            Assert.AreEqual(voiture.Angle, 0.049, 1e-6);
            Assert.AreEqual(voiture.Vitesse, -4.88, 1e-6);
        }
示例#9
0
        [TestMethod]//Test vitesse et angle de la voiture en mouvement negatif qui freine à gauche
        public void TestFreinageGaucheDepartVitesseNegative()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Vitesse = -5.0F;
            voiture.Accelerer();
            voiture.TournerGauche();
            voiture.Freiner();

            Assert.AreEqual(voiture.Angle, 0.049, 1e-6);
            Assert.AreEqual(voiture.Vitesse, -5.05, 1e-6);
        }
示例#10
0
        private static void Module6Test()
        {
            Voiture maVoiture = new Voiture();

            maVoiture.CoteVolant1 = Voiture.CoteVolant.Gauche;
            CoteVolant coteVolant = maVoiture.CoteVolant1;

            Voiture voiture1 = new Voiture(10, "zoijor", "zpoerpozer");
            //voiture1 = new Voiture();
            //Clone v1 to v2
            Voiture voiture2 = new Voiture(voiture1);
        }
示例#11
0
 // modifier la disponibilité de la voiture en paramètre
 public static void Modif_Disp(string Immat)
 {
     using (BDLocationEntities context = new BDLocationEntities())
     {
         Voiture V = context.Voiture.Find(Immat);
         if (V != null)
         {
             V.Est_Disp = !V.Est_Disp;
             context.SaveChanges();
         }
     }
 }
示例#12
0
        private static void testEvenement()
        {
            BindingList <Voiture> listeVoitures = new BindingList <Voiture>();

            //on considèere que l'ajout est un evenement important
            //on veut que la methode uneNouvelleVoiture est arrivée soit appelé lors de l'ajout
            listeVoitures.Add(new Voiture()
            {
                Marque = "RENAULT", Modele = "Clio", Kilometrage = 200000
            });
            listeVoitures.Add(new Voiture()
            {
                Marque = "AUDI", Modele = "A6", Kilometrage = 20000
            });
            listeVoitures.Add(new Voiture()
            {
                Marque = "CITROEN", Modele = "Picasso", Kilometrage = 150000
            });

            //Il faut s'abonner à l'evenement
            //listeVoitures.AddingNew += ListeVoitures_AddingNew;
            listeVoitures.ListChanged += uneNouvelleVoitureEstArrivee;
            listeVoitures.ListChanged += uneNouvelleVoitureEstArrivee2;
            listeVoitures.ListChanged += uneNouvelleVoitureEstArrivee3;
            //désabonnements
            listeVoitures.ListChanged -= uneNouvelleVoitureEstArrivee2;
            listeVoitures.ListChanged -= uneNouvelleVoitureEstArrivee3;


            listeVoitures.Add(new Voiture()
            {
                Marque = "PORSCHE", Modele = "Carrera", Kilometrage = 5000
            });
            listeVoitures.Add(new Voiture()
            {
                Marque = "PORSCHE", Modele = "Carrera", Kilometrage = 5000
            });
            listeVoitures.Remove(listeVoitures[0]);

            Voiture porsche = new Voiture()
            {
                Marque = "PORSCHE", Modele = "Carrera", Kilometrage = 5000
            };

            listeVoitures.Add(porsche);
            //tentative de  modif => pas d'evenement levé
            porsche.Modele = "911";

            // toujours pas d'evenement
            porsche.PropertyChanged += Porsche_PropertyChanged;
            //tentative de  modif
            porsche.Modele = "911";
        }
示例#13
0
        static void Main(string[] args)
        {
            Usine   u_charleroi = new UsineAudi();
            Voiture v           = u_charleroi.Produire();

            Console.WriteLine($"v est une voiture de chez {v.GetType()}");

            u_charleroi = new UsineRenault();
            Voiture v2 = u_charleroi.Produire();

            Console.WriteLine($"v2 est une voiture de chez {v2.GetType()}");
        }
示例#14
0
        public void FirstTest()
        {
            //AAA
            //ARRANGE
            var Voiture = new Voiture();

            Voiture.Couleur = "rouge";
            //ACT
            Voiture.Peindre("Vert");
            //ASSERT
            Assert.AreEqual(Voiture.Couleur, "Vert");
        }
示例#15
0
 //supprimer une voiture ayant la matricule donnée en paramètre
 public static void Supprimer(string Mat)
 {
     using (BDLocationEntities context = new BDLocationEntities())
     {
         Voiture V = context.Voiture.Find(Mat);
         if (V != null)
         {
             context.Voiture.Remove(V);
             context.SaveChanges();
         }
     }
 }
示例#16
0
        public IHttpActionResult PostVoiture(Voiture voiture)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Voitures.Add(voiture);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = voiture.id }, voiture));
        }
示例#17
0
        [TestMethod]//Test vitesse et angle de la voiture en mouvement qui freine à gauche
        public void TestFreinageGaucheDepartMouvement()
        {
            Usager voiture = new Voiture(0, 0, 10, 20, 80);

            voiture.Vitesse = 5.0F;
            voiture.Accelerer();
            voiture.TournerGauche();
            voiture.Freiner();

            Assert.AreEqual(voiture.Angle, -0.051, 1e-6);
            Assert.AreEqual(voiture.Vitesse, 4.95, 1e-6);
        }
示例#18
0
 static void AfficherPrix(Voiture v, Modele m, Option o)
 {
     Console.WriteLine("Immatriculation : {0}", v.GetImmatriculation());
     Console.WriteLine("Modèle : {1}", m.GetNom());
     Console.WriteLine("Marque : {2}", m.GetMarque());
     Console.WriteLine("Prix : {3}", m.GetPrix());
     Console.WriteLine("{4} : {5}", o.GetLibelle(), o.GetPrix());
     Console.WriteLine("{6} : {7}", o.GetLibelle(), o.GetPrix());
     Console.WriteLine("{8} : {9}", o.GetLibelle(), o.GetPrix());
     Console.WriteLine("{10} : {11}", o.GetLibelle(), o.GetPrix());
     Console.WriteLine("Prix total : {12}", m.GetPrix() + o.GetPrix());
 }
示例#19
0
        public Voiture FindByImmatriculation(string imatriculation)
        {
            Voiture car = null;

            foreach (var voiture in voitures)
            {
                if (voiture.Imatriculation == imatriculation)
                {
                    car = voiture;
                }
            }
            return(car);
        }
示例#20
0
        public void TestGeometry()
        {
            Usager car = new Voiture(16, 42, 120, 910, 80);

            Assert.AreEqual(new Point(16, 42), car.Position);
            Assert.AreEqual(new Size(120, 910), car.Taille);
            Assert.AreEqual(120, car.Largeur);
            Assert.AreEqual(910, car.Hauteur);
            Assert.AreEqual(16, car.Gauche);
            Assert.AreEqual(136, car.Droite);
            Assert.AreEqual(42, car.Haut);
            Assert.AreEqual(952, car.Bas);
        }
        public ActionResult Edite(FormCollection param)
        {
            try
            {
                string key = param["key"];
                string pass = param["password"];
                tdonnee = new TraitementDonnees();

                if (!tdonnee.StringIsValid(key))
                {
                    ViewBag.err = "err1";
                    ViewBag.op = "edit";
                    return View("~/Views/Voiture/PutPass.cshtml");
                }

                long id = Int64.Parse(key);

                if (id <= 0)
                {
                    ViewBag.Key = key;
                    ViewBag.err = "err1";
                    ViewBag.op = "edit";
                    return View("~/Views/Voiture/PutPass.cshtml");
                }

                Voiture v = db.Voitures.Find(id);
                if (v == null)
                {
                    ViewBag.Key = key;
                    ViewBag.err = "err1";
                    ViewBag.op = "edit";
                    return View("~/Views/Voiture/PutPass.cshtml");
                }

                pass = tdonnee.GetMd5(pass);
                if (v.password != pass)
                {
                    ViewBag.Key = key;
                    ViewBag.err = "err2";
                    ViewBag.op = "edit";
                    return View("~/Views/Voiture/PutPass.cshtml");
                }

                return View("~/Views/Voiture/Edit.cshtml", v);
            }
            catch (Exception e)
            {
                ViewBag.ex = "Erreur sur le passage de donnees";
                return View("~/Views/Error/Exception.cshtml");
            }
        }
示例#22
0
        // GET: Voitures/Delete/5
        public ActionResult Delete(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Voiture voiture = db.Voitures.Where(v => v.idVoiture.ToString().Equals(id)).FirstOrDefault();

            if (voiture == null)
            {
                return(HttpNotFound());
            }
            return(View(voiture));
        }
示例#23
0
        public IHttpActionResult DeleteVoiture(int id)
        {
            Voiture voiture = db.Voitures.Find(id);

            if (voiture == null)
            {
                return(NotFound());
            }

            db.Voitures.Remove(voiture);
            db.SaveChanges();

            return(Ok(voiture));
        }
示例#24
0
        // événement double click du datagridview pour sélectionner une voiture
        // et la stocker dans l'objet Vt
        private void Dg_Voit_DoubleClick(object sender, EventArgs e)
        {
            int ind = Dg_Voit.CurrentRow.Index;

            Vt = new Voiture
            {
                Immat_V   = Dg_Voit[0, ind].Value.ToString(),
                Marq_V    = Dg_Voit[1, ind].Value.ToString(),
                Mod_V     = Dg_Voit[2, ind].Value.ToString(),
                Kilom_V   = int.Parse(Dg_Voit[3, ind].Value.ToString()),
                PrixLoc_V = float.Parse(Dg_Voit[4, ind].Value.ToString())
            };
            this.Close();
        }
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Voiture voiture = db.Voitures.Find(id);

            if (voiture == null)
            {
                return(HttpNotFound());
            }
            return(View(voiture));
        }
示例#26
0
        // Bouton qui appelle le form FListeVoit pour rechercher une voiture pour location
        // et récupération de ses informations
        private void Rech_Voit_Click(object sender, EventArgs e)
        {
            FListeVoit F = new FListeVoit();

            F.ShowDialog();
            Voiture V = F.Vt;

            if (V != null)
            {
                Txt_Voit.Text = V.Immat_V;
                Txt_Kil.Text  = V.Kilom_V.ToString();
                Txt_Prix.Text = V.PrixLoc_V.ToString();
            }
        }
        public ActionResult DeleteConfirmed(int id)
        {
            Voiture voiture = db.Voitures.Find(id);

            db.Voitures.Remove(voiture);
            var currentUser = db.Users.FirstOrDefault(u => u.Id == User.Identity.GetUserId());

            if (!currentUser.ListeVoitures.Any())
            {
                new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)).RemoveFromRole(User.Identity.GetUserId(), "Conducteur");
            }
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public void ModifVoiture(Voiture voiture)
        {
            Voiture voitureAModifier = _DbContext.Voitures.SingleOrDefault(x => x.Numero == voiture.Numero);

            if (voitureAModifier == null)
            {
                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }

            voitureAModifier.Matricule     = voiture.Matricule; voitureAModifier.Nom = voiture.Nom; voitureAModifier.Marque = voiture.Marque;
            voitureAModifier.NumeroChassis = voiture.NumeroChassis; voitureAModifier.Photo = voiture.Photo;

            _DbContext.SaveChanges();
        }
示例#29
0
        public ActionResult Details(string id)
        {
            if (id == null)
            {
                return(RedirectToAction("Index")); //Content("page not found ");
            }
            Voiture voiture = db.Voitures.Include(r => r.reservations).Where(v => v.idVoiture.ToString().Equals(id)).FirstOrDefault();

            if (voiture == null)
            {
                return(HttpNotFound());
            }
            return(View(voiture));
        }
示例#30
0
        public void Initialiser_CasMarqueNulle_Exception()
        {
            // Arranger
            string marque = null;
            string modele = "modele1";

            // Agir && Auditer
            Voiture v = new Voiture();

            Assert.Throws <ArgumentException>(() =>
            {
                v.Initialiser(marque, modele);
            });
        }
示例#31
0
        static void Main(string[] args)
        {
            int valeurAvancement = 0;
            int milliseconds = 1000;

            Console.WriteLine("Création d'une nouvelle voiture...");
            Voiture voiture = new Voiture();
            Console.WriteLine("Démarrage de la voiture en cours...");
            voiture.MettreEnMarche();
            Console.WriteLine("Faire avance la voiture...");
            Console.WriteLine("----------------------------------------------");
            Console.WriteLine("ATTENTION : Pour arrêter la voiture, presser ESC");
            Console.WriteLine("");
            while (!(Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Escape))
            {
                Thread.Sleep(milliseconds);
                valeurAvancement++;
                voiture.Avancer(valeurAvancement);
            }
            Console.WriteLine("\n\nVous avez arrêté la voiture. A la prochaine...");
        }
示例#32
0
        static void Main(string[] args)
        {
            int i = 5;
            double d = 9.5;
            string s = "abcd";
            Voiture voit = new Voiture();

            ////********!debut:version1
            //Afficheur.Affiche(i);
            //Afficheur.Affiche(d);
            //Afficheur.Affiche(s);
            //Afficheur.Affiche(voit);
            ////********!fin:version1

            ////********!debut:version2
            //Afficheur.Affiche<int>(i); //équavalent à Afficheur.Affiche(i); le compilateur comprends
            //Afficheur.Affiche<double>(d);
            //Afficheur.Affiche<string>(s);
            //Afficheur.Affiche<Voiture>(voit);
            ////équivalence
            //Afficheur.Affiche(i);
            //Afficheur.Affiche(d);
            //Afficheur.Affiche(s);
            //Afficheur.Affiche(voit);
            ////********!fin:version2

            //********!debut:version3
            int valeur1 = 5;
            int valeur2 = 10;
            Afficheur.Echanger(ref valeur1, ref valeur2);
            Console.WriteLine(valeur1);
            Console.WriteLine(valeur2);

            Voiture voiture1 = new Voiture { couleur = "rouge" };
            Voiture voiture2 = new Voiture { couleur = "verte" };
            Afficheur.Echanger(ref voiture1, ref voiture2);
            Console.WriteLine(voiture1.couleur);
            Console.WriteLine(voiture2.couleur);

            int entier1 = 5;
            int entier2 = 5;
            double doub = 5.0;
            Console.WriteLine(Afficheur.EstEgal(entier1,entier2));
            Console.WriteLine(Afficheur.EstEgal(entier1,doub));
            //********!fin:version3

            //********!debut:version4
            //utilisation de la classe générique
            MaListeGenerique<int> maListe = new MaListeGenerique<int>();
            maListe.Ajouter(25);
            maListe.Ajouter(30);
            maListe.Ajouter(5);

            Console.WriteLine(maListe.ObetnirElement(0));
            Console.WriteLine(maListe.ObetnirElement(1));
            Console.WriteLine(maListe.ObetnirElement(2));
            Console.WriteLine(maListe.ObetnirElement(3));

            for (int j = 0; j < 30; j++)
            {
                maListe.Ajouter(j);
            }
            //********!fin:version4

            //********!debut:version5
            //utilisation de la classe Nullables
            Nullable<int> entier = null;
            if (!entier.HasValue)
            {
                Console.WriteLine("l'entier n'a pas de valeur");
            }
            entier = 5;
            if (entier.HasValue)
            {
                Console.WriteLine("La valeur de l'entier est :" + entier.Value);
            }

            //********!fin:version5

            Console.ReadLine();
        }