Index: trunk/eCard/eCardMVC/Platnosci.Tests/Web/PlatnosciControllerTests.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci.Tests/Web/PlatnosciControllerTests.cs (revision 888)
+++ trunk/eCard/eCardMVC/Platnosci.Tests/Web/PlatnosciControllerTests.cs (revision 896)
@@ -26,49 +26,39 @@
         private string code_Bad = "payment_declined";        //transakcja odrzucona 
         private DateTime data = DateTime.Now;
-        private string testNip1 = "12345";
-        private string testNip2 = "01234";
-        private int testIdFaktury = 1000;
-        private string testNumerFaktury = "abcd";
-        private decimal testBrutto = 200;
+        
         private int test = 1; //oznacza, ze nie ustawiamy tlumaczen poprzez funkcje ustawTlumaczenia()
                               //w controllerze Platnosci, tylko poprzez funkcje setXXXXXXX()
 
         private Function _f = new Function();
-        private FunkcjePlatnosci _func = new FunkcjePlatnosci();
-        
+               
         [Test]
         [Category("Unit")]
         public void Status_Saves_Correct_Transaction()
         {          
-           // //IDataContext fake = new FakeDataContext();
-           // var repository = new Repository<PlatnosciEcard>(new FakeDataContext());
-           // var platnosci = _f.createNewPayment(orderNumber, false, DateTime.Now, 12345); //new PlatnosciEcard();
-           // repository.Insert(platnosci);
-           // repository.SubmitChanges();
-
-
-           // DateTime datka = DateTime.Now;
-           // var builder = new TestControllerBuilder();
-           // var controller = new PlatnoscController(fake,test);
-           // builder.InitializeController(controller);
-           // builder.Form.Add("MERCHANTNUMBER", merchantNumber.ToString());
-           // builder.Form.Add("AUTHTIME", DateTime.Now.ToString());
-           // builder.Form.Add("DATATRANSMISJI", DateTime.Now.ToString());
-           // builder.Form.Add("ORDERNUMBER", orderNumber.ToString());
-           // builder.Form.Add("CURRENTSTATE", code_Ok);           
-           
-           // var result = controller.Status();
-           
-           // IRepository<PotwierdzeniaEcard> _rep = new Repository<PotwierdzeniaEcard>(new FakeDataContext());
-
-
-           // System.Diagnostics.Debug.WriteLine("" + _rep.Count());
-
-           // //var potwierdzeniaEcard = _rep.Find(p => p.ORDERNUMBER == orderNumber).First();
-           //// Assert.That(potwierdzeniaEcard.MERCHANTNUMBER, Is.EqualTo(merchantNumber));
-           // PlatnosciEcard payment_after_update = _rep.FindPaymentByOrdernumber(orderNumber).SingleOrDefault();
-           // System.Diagnostics.Debug.WriteLine(payment_after_update.Status_data + " > " + datka);
-           // Assert.That(payment_after_update.Status, Is.EqualTo(true));
-            
+           var repository = new Repository<PlatnosciEcard>(new FakeDataContext());
+           var platnosci = _f.createNewPayment(orderNumber, false, DateTime.Now, 12345); 
+           repository.Insert(platnosci);
+           repository.SubmitChanges();
+
+           IRepository<PotwierdzeniaEcard> rep = new Repository<PotwierdzeniaEcard>(new FakeDataContext());
+           
+           var builder = new TestControllerBuilder();
+           var controller = new PlatnoscController(null, repository, rep, test);
+           builder.InitializeController(controller);
+           builder.Form.Add("MERCHANTNUMBER", merchantNumber.ToString());
+           builder.Form.Add("AUTHTIME", DateTime.Now.ToString());
+           builder.Form.Add("DATATRANSMISJI", DateTime.Now.ToString());
+           builder.Form.Add("ORDERNUMBER", orderNumber.ToString());
+           builder.Form.Add("CURRENTSTATE", code_Ok);           
+           
+           var result = controller.Status();
+           
+           System.Diagnostics.Debug.WriteLine("rep:" + rep.Count() + " repPl: " + repository.Count() );
+
+           var potwierdzeniaEcard = rep.Find(o => o.ORDERNUMBER == orderNumber).SingleOrDefault();
+           Assert.That(potwierdzeniaEcard.MERCHANTNUMBER, Is.EqualTo(merchantNumber));
+           PlatnosciEcard payment_after_update = repository.FindOne(orderNumber);
+           System.Diagnostics.Debug.WriteLine("Status musi byc 'true'. Jest " + payment_after_update.Status);
+           Assert.That(payment_after_update.Status, Is.EqualTo(true));            
         }
         [Test]
@@ -76,8 +66,12 @@
         public void Status_Saves_Correct_Transaction_IncorrectUpdate()
         {
-            FakeDataContext fake = new FakeDataContext(2);
-            DateTime datka = DateTime.Now;
+            var repPayment = new Repository<PlatnosciEcard>(new FakeDataContext());
+            var platnosci = _f.createNewPayment(orderNumber, false, DateTime.Now, 12345);
+            repPayment.Insert(platnosci);
+            repPayment.SubmitChanges();
+            IRepository<PotwierdzeniaEcard> repConfirm = new Repository<PotwierdzeniaEcard>(new FakeDataContext());
+          
             var builder = new TestControllerBuilder();
-            var controller = new PlatnoscController(fake,test);
+            var controller = new PlatnoscController(null, repPayment, repConfirm, test);
             builder.InitializeController(controller);
             builder.Form.Add("MERCHANTNUMBER", merchantNumber.ToString());
@@ -87,32 +81,28 @@
             builder.Form.Add("CURRENTSTATE", code_Bad);
 
-            var result = controller.Status();
-           
-            IRepository<PotwierdzeniaEcard> _rep = new Repository<PotwierdzeniaEcard>(fake);
-            var potwierdzeniaEcard = _rep.Find(p => p.ORDERNUMBER == orderNumber).First();
+            var result = controller.Status();           
+           
+            var potwierdzeniaEcard = repConfirm.Find(o => o.ORDERNUMBER == orderNumber).SingleOrDefault();
             Assert.That(potwierdzeniaEcard.MERCHANTNUMBER, Is.EqualTo(merchantNumber));
-
             
-            PlatnosciEcard payment_after_update = _rep.FindPaymentByOrdernumber(orderNumber).SingleOrDefault();
-            System.Diagnostics.Debug.WriteLine(payment_after_update.Status_data + " <= " + datka );
-            Assert.That(payment_after_update.Status_data, Is.LessThanOrEqualTo(datka));
-        }
+            PlatnosciEcard payment_after_update = repPayment.FindOne(orderNumber);
+            System.Diagnostics.Debug.WriteLine("Status musi byc 'false'. Jest " + payment_after_update.Status);
+            Assert.That(payment_after_update.Status, Is.EqualTo(false));
+        }
+        
         [Test]
         [Category("Unit")]
         public void StatusIsUpdated()
         {
-            FakeDataContext fake = new FakeDataContext(3);
-            IRepository<PlatnosciEcard> _rep = new Repository<PlatnosciEcard>(fake);
-
-            PlatnosciEcard platnosc = _f.createNewPayment(orderNumber, false, data.AddDays(-1), 1);
-            _rep.Insert(platnosc);
-
-            DateTime datka = DateTime.Now;
-            var controller = new PlatnoscController(fake,test);
+            IRepository<PlatnosciEcard> repPayment = new Repository<PlatnosciEcard>(new FakeDataContext());
+            PlatnosciEcard platnosc = _f.createNewPayment(orderNumber, false, data, 1);
+            repPayment.Insert(platnosc);
+
+            var controller = new PlatnoscController(null, repPayment, null, test);
             controller.UpdateStatus(orderNumber, code_Ok);   
             
             PlatnosciEcard payment_after_update = new PlatnosciEcard();
-            payment_after_update = _rep.FindOne(orderNumber);
-            
+            payment_after_update = repPayment.FindOne(orderNumber);
+            System.Diagnostics.Debug.WriteLine("Status musi byc 'true'. Jest " + payment_after_update.Status);
             Assert.That(payment_after_update.Status, Is.EqualTo(true));
         }
@@ -121,16 +111,16 @@
         public void StatusIsNotUpdated()
         {
-            FakeDataContext fake = new FakeDataContext();
-            IRepository<PlatnosciEcard> _rep = new Repository<PlatnosciEcard>(fake);
-
-            PlatnosciEcard platnosc = _f.createNewPayment(orderNumber, true, data, 1);
-            _rep.Insert(platnosc);
-
-            var controller = new PlatnoscController(fake,test);
+            IRepository<PlatnosciEcard> repPayment = new Repository<PlatnosciEcard>(new FakeDataContext());
+
+            PlatnosciEcard platnosc = _f.createNewPayment(orderNumber, false, data, 1);
+            repPayment.Insert(platnosc);
+
+            var controller = new PlatnoscController(null, repPayment, null, test);
             controller.UpdateStatus(orderNumber, code_Bad);   
 
             PlatnosciEcard payment_after_update = new PlatnosciEcard();
-            payment_after_update = _rep.FindOne(i => i.ORDERNUMBER == orderNumber);
-            Assert.That(payment_after_update.Status_data, Is.EqualTo(data));
+            payment_after_update = repPayment.FindOne(i => i.ORDERNUMBER == orderNumber);
+            System.Diagnostics.Debug.WriteLine("Status musi byc 'false'. Jest " + payment_after_update.Status);
+            Assert.That(payment_after_update.Status, Is.EqualTo(false));
         }        
         [Test]
@@ -138,17 +128,15 @@
         public void ActionShowPayment_IncorrectUserIdentity_ReturnErrorView()
         {
-            FakeDataContext fake = new FakeDataContext();
-            IRepository<vPlatnosciEcard> _rep = new Repository<vPlatnosciEcard>(fake);
-
-            vPlatnosciEcard platnosc = _f.createPayment(testIdFaktury, testNip1, testNumerFaktury, 0, 0);
-            _rep.Insert(platnosc);
-
-            var controller = new PlatnoscController(fake,test);
-            controller.ControllerContext = _f.createControllerContext(testNip2);
+            IRepository<vPlatnosciEcard> repVPayment = new Repository<vPlatnosciEcard>(new FakeDataContext());
+            vPlatnosciEcard platnosc = _f.createInvoice(123, "nip1", "", 0, 0);
+            repVPayment.Insert(platnosc);
+
+            var controller = new PlatnoscController(repVPayment, null, null, test);
+            controller.ControllerContext = _f.createControllerContext("nip2");
             controller.setWeryfikacja("Niepoprawny nip");            
            
-            var result = controller.Show(testIdFaktury.ToString(),"pl") as ViewResult;
+            var result = controller.Show("123","pl") as ViewResult;
             var error = (ErrorViewData)result.ViewData.Model;
-            
+
             Assert.That(error.error, Is.EqualTo("Niepoprawny nip"));
             Assert.That(result.ViewName, Is.EqualTo("Error1"));
@@ -158,13 +146,12 @@
         public void ActionShowPayment_PaymentNotFound_ReturnErrorView()
         {
-            FakeDataContext fake = new FakeDataContext();
-           // IRepository<vPlatnosciEcard> _rep = new Repository<vPlatnosciEcard>(fake);
-
-            var controller = new PlatnoscController(fake,test);
-
-            controller.ControllerContext = _f.createControllerContext(testNip1);
+            IRepository<vPlatnosciEcard> repVPayment = new Repository<vPlatnosciEcard>(new FakeDataContext());
+            vPlatnosciEcard platnosc = _f.createInvoice(123, "", "", 0, 0);
+            repVPayment.Insert(platnosc);
+
+            var controller = new PlatnoscController(repVPayment, null, null, test);
             controller.setBrakDanych("Platnosc o takim id nie istnieje");
 
-            var result = controller.Show(testIdFaktury.ToString(), "pl") as ViewResult;
+            var result = controller.Show("1234", "pl") as ViewResult;
             var error = (ErrorViewData)result.ViewData.Model;
 
@@ -174,13 +161,22 @@
         [Test]
         [Category("Unit")]
-        public void ActionShowPayment_PaymentIsPaid(){
+        public void ActionShowPayment_PaymentIsPaid()
+        {
             //Tworzymy takie dane aby platnosc o danym id byla juz zaplacona 
-            FakeDataContext fake = new FakeDataContext(1); 
-            var controller = new PlatnoscController(fake,test);
-
-            controller.ControllerContext = _f.createControllerContext(testNip1);
+            var repVPayment = new Repository<vPlatnosciEcard>(new FakeDataContext());
+            var invoice = _f.createInvoice(123, "nip1", "aaa", 0, 0);
+            repVPayment.Insert(invoice);
+            repVPayment.SubmitChanges();
+
+            var repConfirm = new Repository<PotwierdzeniaEcard>(new FakeDataContext());
+            var confirm = _f.createConfirm(code_Ok, 123456);
+            repConfirm.Insert(confirm);
+            repConfirm.SubmitChanges();
+
+            var controller = new PlatnoscController(repVPayment, null, repConfirm, test);
+            controller.ControllerContext = _f.createControllerContext("nip1");
             controller.setZaplacono("Platnosc zostala uregulowana");
 
-            var result = controller.Show(testIdFaktury.ToString(), "pl") as ViewResult;
+            var result = controller.Show("123", "pl") as ViewResult;
             var view = (InvoiceDetailsViewData)result.ViewData.Model;
 
@@ -192,36 +188,37 @@
         public void ActionShowPayment_CorrectData_ReturnViewForPayment()
         {
-            FakeDataContext fake = new FakeDataContext();
-            IRepository<vPlatnosciEcard> _rep = new Repository<vPlatnosciEcard>(fake);
-                                                  
-            vPlatnosciEcard platnosc = _f.createPayment(testIdFaktury, testNip1, testNumerFaktury, testBrutto, 0);
-            _rep.Insert(platnosc);
-
-            var controller = new PlatnoscController(fake,test);
-            controller.ControllerContext = _f.createControllerContext(testNip1);
-
-            var result = controller.Show(testIdFaktury.ToString(), "pl") as ViewResult;
-            Assert.IsInstanceOfType(typeof(InvoiceDetailsViewData), result.ViewData.Model);
+            IRepository<vPlatnosciEcard> repVPayment = new Repository<vPlatnosciEcard>(new FakeDataContext());
+            vPlatnosciEcard platnosc = _f.createInvoice(123, "nip1", "numer", 200, 0);
+            repVPayment.Insert(platnosc);
+
+            var repConfirm = new Repository<PotwierdzeniaEcard>(new FakeDataContext());
+            var confirm = _f.createConfirm(code_Ok, 1);
+            repConfirm.Insert(confirm);
+            repConfirm.SubmitChanges();
+
+            var controller = new PlatnoscController(repVPayment, null, repConfirm, test);
+            controller.ControllerContext = _f.createControllerContext("nip1");
+
+            var result = controller.Show("123", "pl") as ViewResult;
+                      
+            var view = (InvoiceDetailsViewData)result.ViewData.Model;
+            System.Diagnostics.Debug.WriteLine("Brutto 200: " + view.vPlatnosciEcard.Brutto);
+            System.Diagnostics.Debug.WriteLine("Nr Faktury musi byc 'numer'. Jest " + view.vPlatnosciEcard.Faktura_Numer);
+            Assert.That(view.vPlatnosciEcard.Brutto, Is.EqualTo(200));
+            Assert.That(view.vPlatnosciEcard.Faktura_Numer, Is.EqualTo("numer"));            
+        }
+        [Test]
+        [Category("Unit")]
+        public void AfterPay_PaymentIsNotValid()
+        {
+            IRepository<vPlatnosciEcard> repVPayment = new Repository<vPlatnosciEcard>(new FakeDataContext());
+            vPlatnosciEcard platnosc = _f.createInvoice(123, "nip1", "numer", 200, 0);
+            repVPayment.Insert(platnosc);
+
+            var controller = new PlatnoscController(repVPayment, null, null, test);
+            controller.ControllerContext = _f.createControllerContext("nip1");
             
-            var view = (InvoiceDetailsViewData)result.ViewData.Model;
-            Assert.That(view.vPlatnosciEcard.Brutto, Is.EqualTo(testBrutto));
-            Assert.That(view.vPlatnosciEcard.Faktura_Numer, Is.EqualTo(testNumerFaktury));            
-        }
-        [Test]
-        [Category("Unit")]
-        public void AfterPay_PaymentIsNotValid()
-        {
-            FakeDataContext fake = new FakeDataContext();
-            IRepository<vPlatnosciEcard> _rep = new Repository<vPlatnosciEcard>(fake);
-
-            vPlatnosciEcard platnosc = _f.createPayment(testIdFaktury, testNip1, testNumerFaktury, testBrutto, 2);
-            _rep.Insert(platnosc);
-
-            var controller = new PlatnoscController(fake,1);
-            controller.ControllerContext = _f.createControllerContext(testNip1);
-            
-            Payer payer = _f.createPayer(testIdFaktury, "", "test");  //Brak imienia
+            Payer payer = _f.createPayer(123, "", "test");  //Brak imienia
             controller.Show(payer, "pl");
-
             Assert.That(controller.ModelState.IsValid, Is.False);
         }
@@ -230,18 +227,16 @@
         public void AfterPay_PaymentIsValid()
         {
-            FakeDataContext fake = new FakeDataContext();
-            IRepository<vPlatnosciEcard> _rep = new Repository<vPlatnosciEcard>(fake);
-
-            vPlatnosciEcard platnosc = _f.createPayment(testIdFaktury, testNip1, testNumerFaktury, testBrutto, 2);
-            _rep.Insert(platnosc);
-
-            var controller = new PlatnoscController(fake,test);
-            controller.ControllerContext = _f.createControllerContext(testNip1);
-
-            Payer payer = _f.createPayer(testIdFaktury, "test", "test");  
+            IRepository<vPlatnosciEcard> repVPayment = new Repository<vPlatnosciEcard>(new FakeDataContext());
+            vPlatnosciEcard platnosc = _f.createInvoice(123, "nip1", "numer", 200, 0);
+            repVPayment.Insert(platnosc);
+
+            var controller = new PlatnoscController(repVPayment, null, null, test);
+            controller.ControllerContext = _f.createControllerContext("nip1");
+
+            Payer payer = _f.createPayer(123, "test", "test");  
             var result = controller.Show(payer, "pl") as ViewResult;
 
-            System.Diagnostics.Debug.WriteLine("AfterPay_PaymentIsValid_Test");
-            Assert.That(controller.ModelState.IsValid, Is.True, "Model powinien byc true");
+            System.Diagnostics.Debug.WriteLine("Model powinien byc 'true'. Jest " + controller.ModelState.IsValid);
+            Assert.That(controller.ModelState.IsValid, Is.True);
         }
     }
