public void OuvrierEstNonNull()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();
            var serviceEmploye  = new ServiceEmploye(fauxDataEmploye.Object);

            Assert.ThrowsException <InvalidOperationException>(
                () => serviceEmploye.EnregistrerOuvrier(null));
        }
Пример #2
0
        public void ValiderLongueurNomPrenom()
        {
            ServiceEmploye serviceEmploye = new ServiceEmploye(new fauxDataEmploye());
            string         text           = new string('x', 60);
            var            ouvrier        = new Ouvrier
            {
                Nom          = text,
                Prenom       = text,
                DateEmbauche = new DateTime(2018, 01, 01),
                TauxHoraire  = 7
            };

            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("Le Nom ou Prénom est trop long", exception.Message);
        }
Пример #3
0
        public void TauxHoraireOuvrierPositif()
        {
            ServiceEmploye serviceEmploye = new ServiceEmploye(new fauxDataEmploye());
            //var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier = new Ouvrier
            {
                Nom          = "Dupont",
                Prenom       = "Gérard",
                DateEmbauche = new DateTime(2017, 05, 20),
                TauxHoraire  = -9
            };

            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("Le taux horraire doit être positif",
                            exception.Message);
        }
Пример #4
0
        public void ValiderStringLength()
        {
            string   text         = new string('x', 20);
            DateTime dateEmbauche = Convert.ToDateTime("02/02/2018");

            ServiceEmploye serviceEmploye = new ServiceEmploye(new DbDataEmploye());
            var            employe        = new Ouvrier
            {
                Nom          = text,
                Prenom       = text,
                DateEmbauche = dateEmbauche,
                TauxHoraire  = 1
            };
            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(employe);
            });

            Assert.AreEqual("Le Nom est trop long (50 caractères max)", exception.Message);
        }
Пример #5
0
        public void DateEmbaucheOuvrierAnterieureAujourdhuiPlus3Mois()
        {
            ServiceEmploye serviceEmploye = new ServiceEmploye(new fauxDataEmploye());
            //var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier = new Ouvrier
            {
                Nom          = "Dupont",
                Prenom       = "Gérard",
                DateEmbauche = new DateTime(2019, 05, 20),
                TauxHoraire  = 9
            };

            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("La date d'embauche ne peut être dans plus de 3 mois",
                            exception.Message);
        }
Пример #6
0
        public void InterdireCaracteresSpeciauxDansNomEtPrenomOuvrier()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            fauxDataEmploye.Setup(x => x.EnregistrerOuvrier(It.IsAny <Ouvrier>()));
            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier        = new Ouvrier
            {
                Nom          = "Dup/ont",
                Prenom       = "Gér@rd",
                DateEmbauche = (DateTime.Today),
                TauxHoraire  = 12
            };
            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("Le nom et le prénom ne doivent pas contenir de caractères spéciaux", exception.Message);
        }
Пример #7
0
        public void TauxHoraireOuvrierPositif()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            fauxDataEmploye.Setup(x => x.EnregistrerOuvrier(It.IsAny <Ouvrier>()));
            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier        = new Ouvrier
            {
                Nom          = "Dupont",
                Prenom       = "Gérard",
                DateEmbauche = (DateTime.Today).AddMonths(3),
                TauxHoraire  = -12
            };
            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("Le taux horaire d'un ouvrier ne peut pas être négatif", exception.Message);
        }
        public void InterdireCaracteresSpeciauxDansNomEtPrenomOuvrier()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();
            var serviceEmploye  = new ServiceEmploye(fauxDataEmploye.Object);

            var ouvrier = new Ouvrier
            {
                Id           = 1,
                Nom          = "Dup/ont",
                Prenom       = "Gér@rd",
                DateEmbauche = DateTime.Now,
                TauxHoraire  = 15
            };

            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("Entrée invalide caractères spéciaux interdits", exception.Message);
        }
Пример #9
0
        public void DateEmbaucheOuvrierAnterieureAujourdhuiPlus3Mois()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            fauxDataEmploye.Setup(x => x.EnregistrerOuvrier(It.IsAny <Ouvrier>()));
            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier        = new Ouvrier
            {
                Nom          = "Dupont",
                Prenom       = "Gérard",
                DateEmbauche = (DateTime.Today).AddMonths(3),
                TauxHoraire  = 12
            };
            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("La date d'embauche ne doit pas être au-delà de 3 mois",
                            exception.Message);
        }
Пример #10
0
        public void DateEmbaucheOuvrierAnterieureAujourdhuiPlus3Mois()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            fauxDataEmploye.Setup(x => x.EnregistrerOuvrier(It.IsAny <Ouvrier>()));

            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);

            var ouvrier = new Ouvrier
            {
                Nom          = "Lucky",
                Prenom       = "Luke",
                DateEmbauche = new DateTime(2020, 07, 30),
                TauxHoraire  = 15
            };
            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("La date d'embauche doit être inférieure à 3 mois à partir d'aujourdhui", exception.Message);
        }
Пример #11
0
        public void DateEmbaucheOuvrierPosterieureA1920()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            fauxDataEmploye.Setup(x => x.EnregistrerOuvrier(It.IsAny <Ouvrier>()));

            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier        = new Ouvrier
            {
                Nom          = "Dupont",
                Prenom       = "Gérard",
                DateEmbauche = new DateTime(1920, 12, 31),
                TauxHoraire  = 12
            };
            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("La date d'embauche doit être > 1920",
                            exception.Message);
        }
Пример #12
0
        public void TauxHoraireOuvrierPositif()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            fauxDataEmploye.Setup(x => x.EnregistrerOuvrier(It.IsAny <Ouvrier>()));

            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier        = new Ouvrier
            {
                Nom          = "Dupont",
                Prenom       = "Gérard",
                DateEmbauche = new DateTime(1920, 12, 31),
                TauxHoraire  = 1500
            };
            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("Taux horaire invalide, il ne peut être négatif",
                            exception.Message);
        }
Пример #13
0
        public void TauxHoraireOuvrierPositif(int tauxHoraire)
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            fauxDataEmploye.Setup(x => x.EnregistrerOuvrier(It.IsAny <Ouvrier>()));

            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);

            var ouvrier = new Ouvrier
            {
                Nom          = "Doc",
                Prenom       = "Brown",
                DateEmbauche = DateTime.Today,
                TauxHoraire  = tauxHoraire
            };
            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
                serviceEmploye.GetSalaireOuvrier(1, DateTime.Parse("01/08/2018"));
            });

            Assert.AreEqual("Taux horaire invalide", exception.Message);
        }
Пример #14
0
        public void InterdireCaracteresSpeciauxDansNomEtPrenomOuvrier()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            //ServiceEmploye serviceEmploye = new ServiceEmploye(new fauxDataEmploye());
            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier        = new Ouvrier
            {
                Nom          = "Dup-ont@ opazeirjz",
                Prenom       = "Gérard",
                DateEmbauche = new DateTime(2017, 05, 20),
                TauxHoraire  = 10
            };
            // serviceEmploye.EnregistrerOuvrier(ouvrier);

            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("Les caractères spéciaux ne sont pas autorisés",
                            exception.Message);
        }
Пример #15
0
        public void DateEmbaucheOuvrierAnterieureAujourdhuiPlus3Mois()
        {
            var fauxDataEmploye = new Mock <IDataEmploye>();

            fauxDataEmploye.Setup(x => x.EnregistrerOuvrier(It.IsAny <Ouvrier>()));

            var serviceEmploye = new ServiceEmploye(fauxDataEmploye.Object);
            var ouvrier        = new Ouvrier
            {
                Nom          = "Trape",
                Prenom       = "Jacques",
                DateEmbauche = new DateTime(2019, 01, 31),
                TauxHoraire  = 1500
            };

            var exception = Assert.ThrowsException <BusinessException>(() =>
            {
                serviceEmploye.EnregistrerOuvrier(ouvrier);
            });

            Assert.AreEqual("La date d'embauche ne doit pas être > à la date du jour plus 3 mois",
                            exception.Message);
        }