Index: /trunk/eCard/eCardMVC/adMoto.Payments.Test/adMoto.Payments.Test.csproj
===================================================================
--- /trunk/eCard/eCardMVC/adMoto.Payments.Test/adMoto.Payments.Test.csproj (revision 985)
+++ /trunk/eCard/eCardMVC/adMoto.Payments.Test/adMoto.Payments.Test.csproj (revision 991)
@@ -84,4 +84,5 @@
     <Compile Include="Properties\AssemblyInfo.cs" />
     <Compile Include="TestRunner.cs" />
+    <Compile Include="UI\BaseTests.cs" />
     <Compile Include="UI\eCardValidationTests.cs" />
     <Compile Include="UI\UIData.cs" />
Index: /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/eCardValidationTests.cs
===================================================================
--- /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/eCardValidationTests.cs (revision 990)
+++ /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/eCardValidationTests.cs (revision 991)
@@ -5,8 +5,16 @@
 {
     [TestFixture]
-    public class eCardValidationTests
+    public class eCardValidationTests : BaseTests
     {
         private readonly UIHelper _uiHelper = new UIHelper();
-        private static string adres = UIHelper.ConfirmForm;
+        private static string adres = UIHelper.ConfirmForm;       
+
+        [SetUp]
+        public void SetUp()
+        {
+            System.Diagnostics.Debug.WriteLine("nowy test");
+            _uiHelper.SearchAndClean();
+            ie.GoTo(adres);
+        }
 
         [Test]
@@ -15,12 +23,9 @@
         {
             var merchantnumberTooLong = "123456789012345678901234567890123456789012345678901234";
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("MERCHANTNUMBER")).TypeText(merchantnumberTooLong);
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("MERCHANTNUMBER"));
-            _uiHelper.CloseWebBrowser(ie);
-        }
-                
+        }                
                 
         [Test]
@@ -28,10 +33,8 @@
         public void Status_Returns_False_And_Throws_FormatException_When_Passing_OrderNumber_In_Wrong_Format()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("ORDERNUMBER")).TypeText("aaaaaaaa");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("FormatException"));
-            _uiHelper.CloseWebBrowser(ie);
         }
         
@@ -40,10 +43,8 @@
         public void Status_Returns_False_And_Throws_ArgumentException_When_Passing_ValidationCode_Longer_Than_Three_Characters()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("VALIDATIONCODE")).TypeText("1111");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("VALIDATIONCODE"));
-            _uiHelper.CloseWebBrowser(ie);
         }
        
@@ -52,10 +53,8 @@
         public void Status_Returns_False_And_Throws_FormatException_When_Passing_Authtime_Is_Wrong_Format()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("AUTHTIME")).TypeText("aaaaaa");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("FormatException"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -64,10 +63,8 @@
         public void Status_Returns_False_And_Throws_SqlTypeException_When_Passing_Authtime_Is_Overflow()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("AUTHTIME")).TypeText("0001-01-01 00:00:00");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("SqlTypeException"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -76,10 +73,8 @@
         public void Status_Returns_False_And_Throws_ArgumentException_When_Passing_Bin_Longer_Than_Six_Characters()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("BIN")).TypeText("11111111");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("BIN"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -88,10 +83,8 @@
         public void Status_Returns_False_And_Throws_FormatException_When_Passing_EventType_In_Wrong_Format()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("EVENTTYPE")).TypeText("212dsf");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("FormatException"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -100,10 +93,8 @@
         public void Status_Returns_False_And_Throws_FormatException_When_Passing_PaymentNumber_In_Wrong_Format()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("PAYMENTNUMBER")).TypeText("AAAA");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("FormatException"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -113,10 +104,8 @@
         {
             var previousstateTooLong = "123456789012345678901234567890123456789012345678901234";
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("PREVIOUSSTATE")).TypeText(previousstateTooLong);
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("PREVIOUSSTATE"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -126,10 +115,8 @@
         {
             var currentstateTooLong = "123456789012345678901234567890123456789012345678901234";
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("CURRENTSTATE")).TypeText(currentstateTooLong);
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("CURRENTSTATE"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -139,10 +126,8 @@
         {
             var approvalcodeTooLong = "123456789012345678901234567890123456789012345678901234";
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("APPROVALCODE")).TypeText(approvalcodeTooLong);
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("APPROVALCODE"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -152,10 +137,8 @@
         {
             var commtypeTooLong = "123456789012345678901234567890123456789012345678901234";
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("COMMTYPE")).TypeText(commtypeTooLong);
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("COMMTYPE"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -164,10 +147,8 @@
         public void Status_Returns_False_And_Throws_ArgumentException_When_Passing_Type_Longer_Than_Two_Characters()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("TYPE")).TypeText("11222");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("TYPE"));
-            _uiHelper.CloseWebBrowser(ie);
         }
 
@@ -176,10 +157,8 @@
         public void Status_Returns_False_And_Throws_ArgumentException_When_Passing_WithCvc_Longer_Than_Three_Characters()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("WITHCVC")).TypeText("1112");
             ie.Button(Find.ById("dalej")).Click();
             Assert.IsTrue(ie.ContainsText("FALSE"));
             Assert.IsTrue(ie.ContainsText("WITHCVC"));
-            _uiHelper.CloseWebBrowser(ie);
         }      
        
Index: /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/BaseTests.cs
===================================================================
--- /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/BaseTests.cs (revision 991)
+++ /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/BaseTests.cs (revision 991)
@@ -0,0 +1,32 @@
+﻿using System;
+using NUnit.Framework;
+using WatiN.Core;
+
+namespace adMoto.Payments.Test.UI
+{
+    [TestFixture]
+    public class BaseTests
+    {
+        public IE ie;
+        private readonly UIHelper _uiHelper = new UIHelper();
+
+        [TestFixtureSetUp]
+        public void TestFixtureSetUp()
+        {
+            ie = new IE();
+            System.Diagnostics.Debug.WriteLine("otwarcie okna");
+        }
+
+        [TestFixtureTearDown]
+        public void TestFixtureTearDown()
+        {
+            _uiHelper.SearchAndClean();
+            _uiHelper.CloseWebBrowser(ie);
+            System.Diagnostics.Debug.WriteLine("zamkniecie okna");
+        }
+        [Test]
+        public void Start()
+        {
+        }
+    }
+}
Index: /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/UIHelper.cs
===================================================================
--- /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/UIHelper.cs (revision 990)
+++ /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/UIHelper.cs (revision 991)
@@ -15,6 +15,6 @@
     {
         private readonly TestDataHelper _testDataHelper = new TestDataHelper();
-        private IRepository<FAKTURY> _repInvoices;
-        private IRepository<FAKTURA_DETAIL> _repInvoiceDetails;
+        private IRepository<FAKTURY> _repInvoices = new Repository<FAKTURY>(new DataContext());
+        private IRepository<FAKTURA_DETAIL> _repInvoiceDetails = new Repository<FAKTURA_DETAIL>(new DataContext());
         private IRepository<PlatnosciEcard> _repPayment;
         private UIData uiData;
@@ -26,5 +26,4 @@
         public UIData CreateAndAddTestRecordToRepository(int amount)
         {    
-            _repInvoices = new Repository<FAKTURY>(new DataContext());
             var invoices = new FAKTURY
                                {
@@ -43,5 +42,4 @@
             if (invoice != null)
             {
-                _repInvoiceDetails = new Repository<FAKTURA_DETAIL>(new DataContext());
                 var invoiceDetails = new FAKTURA_DETAIL
                                         {
@@ -90,4 +88,21 @@
                 _repPayment.Delete(payment);
         }
+
+        public void SearchAndClean()
+        {
+            var invoices = _repInvoices.FindAll(p => p.NUMER == 1 && p.NUMER_ROK == 1 && p.NUMER_ROZ == "SLJ" && p.ID_NABYWCY == 76131);
+            System.Diagnostics.Debug.WriteLine(" count: " + invoices.Count);
+            for (int i = 0; i < invoices.Count; i++)
+            {
+                var id_faktury = invoices[i].ID_FAKTURY;
+                System.Diagnostics.Debug.WriteLine(" id faktury: " + invoices[i].ID_FAKTURY + "\n");
+                if (invoices[i] != null)
+                    _repInvoices.Delete(invoices[i]);
+
+                var invoiceDetails = _repInvoiceDetails.FindOne(p => p.ID_FAKTURY == id_faktury);
+                if (invoiceDetails != null)
+                    _repInvoiceDetails.Delete(invoiceDetails);
+            }
+        }
         
         public void CloseWebBrowser(IE ie)
Index: /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/ValidationTests.cs
===================================================================
--- /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/ValidationTests.cs (revision 985)
+++ /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/ValidationTests.cs (revision 991)
@@ -5,8 +5,18 @@
 {
     [TestFixture]
-    public class ValidationTests
+    public class ValidationTests : BaseTests
     {
         private readonly UIHelper _uiHelper = new UIHelper();
         private static string adres = UIHelper.LoginSite;
+        private UIData uiData;
+        private const string test = "test";
+
+        [SetUp]
+        public void SetUp()
+        {
+            System.Diagnostics.Debug.WriteLine("nowy test");
+            _uiHelper.SearchAndClean();           
+            ie.GoTo(adres);
+        }
 
         [Test]
@@ -14,9 +24,6 @@
         public void Validates_When_Firstname_Is_Too_Long()
         {
-            var uiData = _uiHelper.CreateAndAddTestRecordToRepository(2);
-
-            const string test = "test";
-
-            var ie = new IE(adres);
+            uiData = _uiHelper.CreateAndAddTestRecordToRepository(2);
+            
             ie.TextField(Find.ByName("numerFaktury")).TypeText(uiData.Test_numer_faktury);
             ie.TextField(Find.ByName("nip")).TypeText(uiData.Test_nip);
@@ -27,5 +34,4 @@
             ie.Button(Find.ById("place")).Click();
             Assert.IsTrue(ie.ContainsText("Zbyt długa nazwa"));
-            _uiHelper.CloseWebBrowser(ie);
 
             //usuniecie rekordu z tabel: FAKTURY, FAKTURA_DETAILS
@@ -37,9 +43,6 @@
         public void Validates_When_Surname_Is_Too_Long()
         {
-            var uiData = _uiHelper.CreateAndAddTestRecordToRepository(2);
+            uiData = _uiHelper.CreateAndAddTestRecordToRepository(2);
 
-            const string test = "test";
-
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("numerFaktury")).TypeText(uiData.Test_numer_faktury);
             ie.TextField(Find.ByName("nip")).TypeText(uiData.Test_nip);
@@ -50,5 +53,4 @@
             ie.Button(Find.ById("place")).Click();
             Assert.IsTrue(ie.ContainsText("Zbyt długa nazwa"));
-            _uiHelper.CloseWebBrowser(ie);
 
             //usuniecie rekordu z tabel: FAKTURY, FAKTURA_DETAILS
@@ -60,9 +62,6 @@
         public void Validates_When_LastName_Is_Empty()
         {
-            var uiData = _uiHelper.CreateAndAddTestRecordToRepository(2);
+            uiData = _uiHelper.CreateAndAddTestRecordToRepository(2);
 
-            const string test = "test";
-
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("numerFaktury")).TypeText(uiData.Test_numer_faktury);
             ie.TextField(Find.ByName("nip")).TypeText(uiData.Test_nip);
@@ -73,5 +72,4 @@
             ie.Button(Find.ById("place")).Click();
             Assert.IsTrue(ie.ContainsText("Proszę podać"));
-            _uiHelper.CloseWebBrowser(ie);
 
             //usuniecie rekordu z tabel: FAKTURY, FAKTURA_DETAILS
Index: /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/AuthenticationTests.cs
===================================================================
--- /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/AuthenticationTests.cs (revision 986)
+++ /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/AuthenticationTests.cs (revision 991)
@@ -1,23 +1,32 @@
 ﻿using NUnit.Framework;
 using WatiN.Core;
+using adMoto.Payments.Core.Data;   
+using adMoto.Payments.Core;
+using adMoto.Payments.Core.Interfaces;
 
-namespace adMoto.Payments.Test.UI
+namespace adMoto.Payments.Test.UI 
 {
     [TestFixture]
-    public class AuthenticationTests
+    public class AuthenticationTests : BaseTests
     {
         private readonly UIHelper _uiHelper = new UIHelper();
         private static string adres = UIHelper.LoginSite;
         
+        [SetUp]
+        public void SetUp()
+        {
+            System.Diagnostics.Debug.WriteLine("nowy test");
+            _uiHelper.SearchAndClean();
+            ie.GoTo(adres);           
+        }
+
         [Test]
         [Category("UI")]
         public void Can_Not_Login_When_Using_InValid_Login_Information()
         {
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("numerFaktury")).TypeText("");
             ie.TextField(Find.ByName("nip")).TypeText("");
             ie.Button(Find.ById("loguj")).Click();
             Assert.IsTrue(ie.ContainsText("Logowanie nie powiodło się"));
-            _uiHelper.CloseWebBrowser(ie);
         }
         
@@ -26,12 +35,11 @@
         public void Can_Login_When_Using_Correct_Login_Information()
         {
-            var uiData = _uiHelper.CreateAndAddTestRecordToRepository(0);
-
-            var ie = new IE(adres);
+            var uiData = _uiHelper.CreateAndAddTestRecordToRepository(10);
+            
             ie.TextField(Find.ByName("numerFaktury")).TypeText(uiData.Test_numer_faktury);
             ie.TextField(Find.ByName("nip")).TypeText(uiData.Test_nip);
             ie.Button(Find.ById("loguj")).Click();
             Assert.IsTrue(ie.ContainsText("Szczegóły zlecenia"));
-            _uiHelper.CloseWebBrowser(ie);
+            
             _uiHelper.DeleteTestRecordsFromRepository(uiData);
         }
Index: /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/MerchantTests.cs
===================================================================
--- /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/MerchantTests.cs (revision 985)
+++ /trunk/eCard/eCardMVC/adMoto.Payments.Test/UI/MerchantTests.cs (revision 991)
@@ -5,8 +5,39 @@
 {
     [TestFixture]
-    public class MerchantTests
+    public class MerchantTests : BaseTests
     {
         private readonly UIHelper _uiHelper = new UIHelper();
         private static string adres = UIHelper.LoginSite;
+        private UIData uiData;
+        private const string test = "test";
+       
+        [SetUp]
+        public void SetUp()
+        {
+            System.Diagnostics.Debug.WriteLine("nowy test");
+            _uiHelper.SearchAndClean();
+            ie.GoTo(adres);
+        }
+
+        [Test]
+        [Category("UI")]
+        public void Returns_ZlyHash_When_Invoice_Amount_Is_Zero()
+        {
+            // wartosc testowej faktury 1/SLJ/1 jest 0 (zero)
+            // wowczas eCard powinien zwrocic zlyHash - stala informujaca, ze cos jest nie tak...
+            uiData = _uiHelper.CreateAndAddTestRecordToRepository(0);
+
+            ie.TextField(Find.ByName("numerFaktury")).TypeText(uiData.Test_numer_faktury);
+            ie.TextField(Find.ByName("nip")).TypeText(uiData.Test_nip);
+            ie.Button(Find.ById("loguj")).Click();
+
+            ie.TextField(Find.ByName("Payer.FirstName")).TypeText(test);
+            ie.TextField(Find.ByName("Payer.LastName")).TypeText(test);
+            ie.Button(Find.ById("place")).Click();
+            Assert.IsTrue(ie.ContainsText("Wystąpił nieoczekiwany błąd"));
+
+            //usuniecie rekordu z tabel: FAKTURY, FAKTURA_DETAILS
+            _uiHelper.DeleteTestRecordsFromRepository(uiData);
+        }
 
         [Test]
@@ -15,11 +46,6 @@
         {
             //dodanie testowego rekordu do tabel: FAKTURY, FAKTURA_DETAILS
-            var uiData = _uiHelper.CreateAndAddTestRecordToRepository(2);
+            uiData = _uiHelper.CreateAndAddTestRecordToRepository(2);
             
-            const string test = "test";
-            uiData.Test_surname = test;
-            uiData.Test_firstname = test;
-
-            var ie = new IE(adres);
             ie.TextField(Find.ByName("numerFaktury")).TypeText(uiData.Test_numer_faktury);
             ie.TextField(Find.ByName("nip")).TypeText(uiData.Test_nip);
@@ -31,6 +57,5 @@
             Assert.IsTrue(ie.ContainsText("Imię i nazwisko:" + test + " " + test));
             Assert.IsTrue(ie.Url.Contains("https://pay.ecard.pl/"));
-            _uiHelper.CloseWebBrowser(ie);
-
+           
             //usuniecie rekordu z tabel: FAKTURY, FAKTURA_DETAILS
             _uiHelper.DeleteTestRecordsFromRepository(uiData);
@@ -39,31 +64,5 @@
             _uiHelper.DeleteTestPaymentFromRepository(uiData);
         }
-
-        [Test]
-        [Category("UI")]
-        public void Returns_ZlyHash_When_Invoice_Amount_Is_Zero()
-        {
-            // wartosc testowej faktury 1/SLJ/1 jest 0 (zero)
-            // wowczas eCard powinien zwrocic zlyHash - stala informujaca, ze cos jest nie tak...
-            var uiData = _uiHelper.CreateAndAddTestRecordToRepository(0);
-
-            const string test = "test";
-            uiData.Test_surname = test;
-            uiData.Test_firstname = test;
-
-            var ie = new IE(adres);
-            ie.TextField(Find.ByName("numerFaktury")).TypeText(uiData.Test_numer_faktury);
-            ie.TextField(Find.ByName("nip")).TypeText(uiData.Test_nip);
-            ie.Button(Find.ById("loguj")).Click();
-
-            ie.TextField(Find.ByName("Payer.FirstName")).TypeText(test);
-            ie.TextField(Find.ByName("Payer.LastName")).TypeText(test);
-            ie.Button(Find.ById("place")).Click();
-            Assert.IsTrue(ie.ContainsText("Wystąpił nieoczekiwany błąd"));
-            _uiHelper.CloseWebBrowser(ie);
-
-            //usuniecie rekordu z tabel: FAKTURY, FAKTURA_DETAILS
-            _uiHelper.DeleteTestRecordsFromRepository(uiData);            
-        }
+        
     }
 }
