Example #1
0
        public void EqualsTest()
        {
            TimeMartien t1 = new TimeMartien(0, 10, 20, 30);
            TimeMartien t2 = new TimeMartien(0, 10, 20, 30);
            TimeMartien t3 = new TimeMartien(0, 10, 20, 35);
            TimeMartien t4 = new TimeMartien(0, 10, 22, 00);
            TimeMartien t5 = new TimeMartien(0, 12, 20, 00);

            Assert.IsTrue(t1.Equals(t2), "Le résultat de l'égalité entre 2 TimeMartien est faux");
            Assert.IsFalse(t2.Equals(t3), "Le résultat de l'égalité entre 2 TimeMartien est faux");
            Assert.IsFalse(t2.Equals(t4), "Le résultat de l'égalité entre 2 TimeMartien est faux");
            Assert.IsFalse(t2.Equals(t5), "Le résultat de l'égalité entre 2 TimeMartien est faux");
        }
Example #2
0
        public void calculerJoursTest()
        {
            DateTime dt  = new DateTime(2015, 12, 04, 0, 20, 0);
            DateTime dt2 = new DateTime(2015, 12, 07, 10, 43, 52);

            /* Algo de calculerJours
             * Dépend d'un DateTime.Now, donc méthode inutilisable pour des tests */
            long     ticks = dt2.Ticks - dt.Ticks;
            TimeSpan ts    = new TimeSpan(ticks);

            TimeMartien tm = new TimeMartien(0, 0, 0, (int)Math.Truncate(ts.TotalSeconds));

            TimeMartien result = new TimeMartien(3, 8, 23, 52);

            Assert.IsTrue(tm.Equals(result) && tm.getJours() == result.getJours(),
                          "Le nombre de jours calculés n'est pas le bon");
        }
        /// <summary>
        /// Permet de procéder aux modifications
        /// </summary>
        /// <param name="sender">Objet source</param>
        /// <param name="e">Evènement</param>
        private void ok_Click(object sender, EventArgs e)
        {
            TimeMartien d = new TimeMartien(0, (int) debutHeure.Value, (int) debutMinute.Value, 0);
            TimeMartien f = new TimeMartien(0, (int) finHeure.Value, (int) finMinute.Value, 0);

            if (d < f || (d > f && f.Equals(new TimeMartien(0))))
            {
                String type = treeView.SelectedNode.Text;
                journeeAModifier.supprimerActivite(activiteAModifier);

                try
                {
                    lieu = new Lieu(int.Parse(lieuTB.Text.Split(';')[0]), int.Parse(lieuTB.Text.Split(';')[1]));
                }
                catch
                {
                    lieu = new Lieu(0, 0);
                }

                Activite a;

                if (exterieurRadio.Checked)
                {
                    ITransport transport;

                    if (vehiculeRadio.Checked)
                        transport = new Vehicule();
                    else
                        transport = new Scaphandre();

                    if (explorationRadio.Checked)
                        a = new ExplorationExterieure(new TypeActivite(type), descriptionTB.Text, new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0), new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0), lieu, transport);
                    else
                        a = new ExperienceExterieure(new TypeActivite(type), descriptionTB.Text, new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0), new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0), lieu, transport);
                }
                else
                    a = new Activite(new TypeActivite(type), descriptionTB.Text, new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0), new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0), new Lieu(0, 0));

                if (a.getDuree().getTotalMinutes() > 0)
                {
                    if (a.getHeureFin().getHeures() == 0 && a.getHeureFin().getMinutes() == 0 && a.getHeureFin().getSecondes() == 0)
                        a.setHeureFin(new TimeMartien(0, 24, 39, 59));

                    /* Découpage activité */
                    if (activiteAModifier.getHeureFin().getHeures() == 0 && activiteAModifier.getHeureFin().getMinutes() == 0 && activiteAModifier.getHeureFin().getSecondes() == 0)
                        activiteAModifier.setHeureFin(new TimeMartien(0, 24, 39, 59));

                    if (activiteAModifier.getDuree().getTotalMinutes() == 10 || activiteAModifier.getDuree().getTotalMinutes() == 9)
                        journeeAModifier.ajouterActivite(a);
                    else if (activiteAModifier.getDuree().getTotalMinutes() == 20 || activiteAModifier.getDuree().getTotalMinutes() == 19)
                    {
                        if (activiteAModifier.getHeureDebut() < a.getHeureDebut())
                            activiteAModifier.setHeureFin(new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0));
                        else
                            activiteAModifier.setHeureDebut(new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0));

                        journeeAModifier.ajouterActivite(a);
                        journeeAModifier.ajouterActivite(activiteAModifier);
                    }
                    else if (activiteAModifier.getDuree().getTotalMinutes() > 20)
                    {
                        if (activiteAModifier.getHeureDebut() < a.getHeureDebut()
                            && activiteAModifier.getHeureFin() > a.getHeureFin())
                        {
                            Activite copie = (activiteAModifier.isActiviteExterieure()) ? null : new Activite(activiteAModifier);

                            if (copie == null && activiteAModifier.isExploration())
                                copie = new ExplorationExterieure((ExplorationExterieure)activiteAModifier);
                            else if (copie == null)
                                copie = new ExperienceExterieure((ExperienceExterieure)activiteAModifier);

                            activiteAModifier.setHeureFin(new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0));
                            copie.setHeureDebut(new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0));

                            journeeAModifier.ajouterActivite(copie);
                            journeeAModifier.ajouterActivite(activiteAModifier);
                        }
                        else if (activiteAModifier.getHeureDebut() < a.getHeureDebut()
                                    && activiteAModifier.getHeureFin() == a.getHeureFin())
                        {
                            activiteAModifier.setHeureFin(new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0));
                            journeeAModifier.ajouterActivite(activiteAModifier);
                        }
                        else if (activiteAModifier.getHeureDebut() == a.getHeureDebut()
                                    && activiteAModifier.getHeureFin() > a.getHeureFin())
                        {
                            activiteAModifier.setHeureDebut(new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0));
                            journeeAModifier.ajouterActivite(activiteAModifier);
                        }

                        journeeAModifier.ajouterActivite(a);
                    }

                    if (a.getHeureFin().getHeures() == 24 && a.getHeureFin().getMinutes() == 39 && a.getHeureFin().getSecondes() == 59)
                        a.setHeureFin(new TimeMartien(0));

                    cm.miseAJourEdt(journeeAModifier);
                    dh.Close();
                    cm.ouvrirDernierDetailHeure();
                    fermerFenetre();
                }
                else
                {
                    errDuree.Text = "La durée de l'activité doit être d'au moins 10 minutes";
                    errDuree.Visible = true;
                }
            }
            else
            {
                errDuree.Text = "La date de début doit être inférieure à la date de fin";
                errDuree.Visible = true;
            }
        }
Example #4
0
        public void EqualsTest()
        {
            TimeMartien t1 = new TimeMartien(0, 10, 20, 30);
            TimeMartien t2 = new TimeMartien(0, 10, 20, 30);
            TimeMartien t3 = new TimeMartien(0, 10, 20, 35);
            TimeMartien t4 = new TimeMartien(0, 10, 22, 00);
            TimeMartien t5 = new TimeMartien(0, 12, 20, 00);

            Assert.IsTrue(t1.Equals(t2), "Le résultat de l'égalité entre 2 TimeMartien est faux");
            Assert.IsFalse(t2.Equals(t3), "Le résultat de l'égalité entre 2 TimeMartien est faux");
            Assert.IsFalse(t2.Equals(t4), "Le résultat de l'égalité entre 2 TimeMartien est faux");
            Assert.IsFalse(t2.Equals(t5), "Le résultat de l'égalité entre 2 TimeMartien est faux");
        }
Example #5
0
        public void calculerJoursTest()
        {
            DateTime dt = new DateTime(2015, 12, 04, 0, 20, 0);
            DateTime dt2 = new DateTime(2015, 12, 07, 10, 43, 52);

            /* Algo de calculerJours
             * Dépend d'un DateTime.Now, donc méthode inutilisable pour des tests */
            long ticks = dt2.Ticks - dt.Ticks;
            TimeSpan ts = new TimeSpan(ticks);

            TimeMartien tm = new TimeMartien(0, 0, 0, (int) Math.Truncate(ts.TotalSeconds));

            TimeMartien result = new TimeMartien(3, 8, 23, 52);

            Assert.IsTrue(tm.Equals(result) && tm.getJours() == result.getJours(),
                "Le nombre de jours calculés n'est pas le bon");
        }