示例#1
0
        public void KuuluisiOstaaEtupisteillaJaPaivitaaEtupisteidenMaara()
        {
            BonusAsiakas asiakas = new BonusAsiakas(1, 245);

            Assert.AreEqual(0, asiakas.OstaEtupisteilla(120));
            Assert.AreEqual(125, asiakas.Etupisteet);
            Assert.AreEqual(48, asiakas.OstaEtupisteilla(173));
            Assert.AreEqual(0, asiakas.Etupisteet);

            asiakas.KerrytaEtupisteita(75);
            asiakas.KerrytaEtupisteita(75);
            asiakas.KerrytaEtupisteita(75);
            asiakas.KerrytaEtupisteita(75);
            asiakas.KerrytaEtupisteita(75);
            asiakas.KerrytaEtupisteita(75);
            asiakas.KerrytaEtupisteita(50);
            Assert.AreEqual(10, asiakas.Etupisteet);
            Assert.AreEqual(33, asiakas.OstaEtupisteilla(43));
            Assert.AreEqual(0, asiakas.Etupisteet);
        }
        public void KuuluisiPaivittaaAsiakkaanEtupisteidenMuutokset()
        {
            BonusAsiakas asiakasTietokannasta = asiakasDb.Hae(1);

            asiakasTietokannasta.KerrytaEtupisteita(200);
            asiakasTietokannasta.KerrytaEtupisteita(142);
            asiakasTietokannasta.KerrytaEtupisteita(360);
            Assert.AreEqual(14.04, asiakasTietokannasta.Etupisteet, 0.1);

            asiakasDb.TallennaMuutokset(asiakasTietokannasta);
            BonusAsiakas asiakasTietokannasta2 = asiakasDb.Hae(1);

            Assert.AreEqual(1, asiakasTietokannasta2.Id);
            Assert.AreEqual(14.04, asiakasTietokannasta2.Etupisteet, 0.1);

            double maksettavaSumma = asiakasTietokannasta2.OstaEtupisteilla(90);

            asiakasDb.TallennaMuutokset(asiakasTietokannasta2);
            BonusAsiakas asiakasTietokannasta3 = asiakasDb.Hae(1);

            Assert.AreEqual(1, asiakasTietokannasta3.Id);
            Assert.AreEqual(0, asiakasTietokannasta3.Etupisteet, 0.1);
            Assert.AreEqual(75.96, maksettavaSumma, 0.1);
        }