Exemplo n.º 1
0
        public void TestLoadCustomers(ActionContext context)
        {
            Assert.AreEqual(true, context.ActiveExecutable.IsExecutionSuccess);

            context.DataAccess.OpenConnection(Constants.DbConnectionString);
            var rowCount = (int)context.DataAccess.ExecuteScalar(@"select count(*) from [dbo].[CustomersStaging]");

            context.DataAccess.CloseConnection();

            // here we expect 0 since we use FakeData
            Assert.AreEqual(0, rowCount);

            Assert.AreEqual(1, context.FakeDestinations.Count);

            FakeDestination fakeDestination = context.FakeDestinations[0];

            foreach (FakeDestinationSnapshot snapshot in fakeDestination.Snapshots)
            {
                string data = snapshot.LoadData();

                string[] rows = data.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

                Assert.AreEqual("1;COMPANY1;", rows[0]);
                Assert.AreEqual("5;COMPANY2;", rows[1]);
                Assert.AreEqual("11;COMPANY3;", rows[2]);
            }
        }
Exemplo n.º 2
0
        protected override void Verify(VerificationContext context)
        {
            Assert.AreEqual(true, context.Package.IsExecutionSuccess);

            bool exists =
                File.Exists(Constants.CustomersFileDestination);

            Assert.AreEqual(true, exists);

            DtsVariable variable = context.Package.GetVariableForPath(@"\[CopyCustomers]\[DFT Convert customer names].[CustomerCount]");
            var         count    = (int)variable.GetValue();

            Assert.AreEqual(3, count);

            Assert.AreEqual(1, context.FakeDestinations.Count);

            FakeDestination fakeDestination = context.FakeDestinations[0];

            foreach (FakeDestinationSnapshot snapshot in fakeDestination.Snapshots)
            {
                string data = snapshot.LoadData();

                string[] rows = data.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

                Assert.AreEqual("1;COMPANY1;", rows[0]);
                Assert.AreEqual("5;COMPANY2;", rows[1]);
                Assert.AreEqual("11;COMPANY3;", rows[2]);
            }
        }
        protected override void Verify(VerificationContext context)
        {
            context.Package.ThrowExceptionOnError();

            Assert.AreEqual(true, context.Package.IsExecutionSuccess);

            bool exists =
                File.Exists(Constants.CustomersFileDestination);

            Assert.AreEqual(true, exists);

            DtsVariable customerCountVariable = context.Package.GetVariableForPath(@"\[CopyCustomers3]\[DFT Convert customer names].[CustomerCount]");
            var         customersCount        = (int)customerCountVariable.GetValue();

            Assert.AreEqual(4, customersCount);

            DtsVariable sourceCustomersErrorCountVariable = context.Package.GetVariableForPath(@"\[CopyCustomers3]\[DFT Convert customer names].[SourceCustomersErrorCount]");
            var         errorsCount = (int)sourceCustomersErrorCountVariable.GetValue();

            Assert.AreEqual(2, errorsCount);

            DtsVariable firstCustomerVariable = context.Package.GetVariableForPath(@"\[CopyCustomers3]\[DFT Convert customer names].[FirstCustomer]");
            var         customerName          = (string)firstCustomerVariable.GetValue();

            Assert.AreEqual("pg", customerName);

            DtsVariable secondCustomerVariable = context.Package.GetVariableForPath(@"\[CopyCustomers3]\[DFT Convert customer names].[SecondCustomer]");

            customerName = (string)secondCustomerVariable.GetValue();
            Assert.AreEqual("irg", customerName);

            ReadOnlyCollection <DataTap> dataTaps = context.DataTaps;

            Assert.AreEqual(7, dataTaps.Count);

            CheckDataTap1(dataTaps);
            CheckDataTap2(dataTaps);
            CheckDataTap3(dataTaps);
            CheckDataTap4(dataTaps);
            CheckDataTap5(dataTaps);
            CheckDataTap6(dataTaps);
            CheckDataTap7(dataTaps);

            Assert.AreEqual(1, context.FakeDestinations.Count);

            FakeDestination fakeDestination = context.FakeDestinations[0];

            foreach (FakeDestinationSnapshot snapshot in fakeDestination.Snapshots)
            {
                string data = snapshot.LoadData();

                string[] rows = data.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

                Assert.AreEqual("911;LG;", rows[0]);
                Assert.AreEqual("1908;PG;", rows[1]);
                Assert.AreEqual("1924;PIL;", rows[2]);
                Assert.AreEqual("2401;IRG;", rows[3]);
            }
        }
        protected override void Verify(VerificationContext context)
        {
            context.Package.ThrowExceptionOnError();

            Assert.AreEqual(true, context.Package.IsExecutionSuccess);

            bool exists =
                File.Exists(Constants.CustomersFileDestination);

            Assert.AreEqual(true, exists);

            DtsVariable customerCountVariable = context.Package.GetVariableForPath(@"\[CopyCustomers4]\[DFT Convert customer names].[CustomerCount]");
            var         customersCount        = (int)customerCountVariable.GetValue();

            Assert.AreEqual(13, customersCount);

            DtsVariable sourceCustomersErrorCountVariable = context.Package.GetVariableForPath(@"\[CopyCustomers4]\[DFT Convert customer names].[SourceCustomersErrorCount]");
            var         errorsCount = (int)sourceCustomersErrorCountVariable.GetValue();

            Assert.AreEqual(0, errorsCount);

            ReadOnlyCollection <DataTap> dataTaps = context.DataTaps;

            Assert.AreEqual(1, dataTaps.Count);

            CheckDataTap1(dataTaps);

            Assert.AreEqual(1, context.FakeDestinations.Count);

            FakeDestination fakeDestination = context.FakeDestinations[0];

            foreach (FakeDestinationSnapshot snapshot in fakeDestination.Snapshots)
            {
                string data = snapshot.LoadData();

                string[] rows = data.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

                int i = 0;
                Assert.AreEqual("1;Company1;table;1;".ToUpper(), rows[i]);
                Assert.AreEqual("1;Company1;chair;4;".ToUpper(), rows[++i]);
                Assert.AreEqual("1;Company1;glass;5;".ToUpper(), rows[++i]);
                Assert.AreEqual("2;furniture co;;;".ToUpper(), rows[++i]);
                Assert.AreEqual("5;Company2;car;2;".ToUpper(), rows[++i]);
                Assert.AreEqual("5;Company2;motor;6;".ToUpper(), rows[++i]);
                Assert.AreEqual("5;Company2;radio;9;".ToUpper(), rows[++i]);
                Assert.AreEqual("5;Company2;navi;10;".ToUpper(), rows[++i]);
                Assert.AreEqual("7;used cars;;;".ToUpper(), rows[++i]);
                Assert.AreEqual("11;Company3;laptop;3;".ToUpper(), rows[++i]);
                Assert.AreEqual("11;Company3;monitor;7;".ToUpper(), rows[++i]);
                Assert.AreEqual("11;Company3;mouse;8;".ToUpper(), rows[++i]);
                Assert.AreEqual("18;computers;;;".ToUpper(), rows[++i]);
            }
        }
        protected override void Verify(VerificationContext context)
        {
            Assert.AreEqual(true, context.Package.IsExecutionSuccess);

            bool exists =
                File.Exists(Constants.CustomersFileDestination);

            Assert.AreEqual(true, exists);

            DtsVariable variable = context.Package.GetVariableForPath(@"\[CopyCustomers]\[DFT Convert customer names].[CustomerCount]");
            var         count    = (int)variable.GetValue();

            Assert.AreEqual(3, count);

            ReadOnlyCollection <DataTap> dataTaps = context.DataTaps;

            DataTap dataTap = dataTaps[0];

            foreach (DataTapSnapshot snapshot in dataTap.Snapshots)
            {
                string data = snapshot.LoadData();
                Assert.IsFalse(string.IsNullOrEmpty(data));

                string[] rows = data.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

                Assert.AreEqual("1908;PG;", rows[0]);
                Assert.AreEqual("2401;IRG;", rows[1]);
                Assert.AreEqual("911;LG;", rows[2]);
            }

            DtsVariable sourceCustomersErrorCount = context.Package.GetVariableForPath(@"\[CopyCustomers]\[DFT Convert customer names].[SourceCustomersErrorCount]");
            var         val = (int)sourceCustomersErrorCount.GetValue();

            Assert.AreEqual(2, val);

            Assert.AreEqual(1, context.FakeDestinations.Count);

            FakeDestination fakeDestination = context.FakeDestinations[0];

            foreach (FakeDestinationSnapshot snapshot in fakeDestination.Snapshots)
            {
                string data = snapshot.LoadData();

                string[] rows = data.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

                Assert.AreEqual("1908;PG;", rows[0]);
                Assert.AreEqual("2401;IRG;", rows[1]);
                Assert.AreEqual("911;LG;", rows[2]);
            }
        }
        protected override void Verify(VerificationContext context)
        {
            Assert.AreEqual(true, context.Package.IsExecutionSuccess);

            Assert.AreEqual(1, context.FakeDestinations.Count);

            FakeDestination fakeDestination = context.FakeDestinations[0];

            foreach (FakeDestinationSnapshot snapshot in fakeDestination.Snapshots)
            {
                string data = snapshot.LoadData();

                string[] rows = data.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

                Assert.AreEqual("1;Company1;", rows[0]);
                Assert.AreEqual("5;Company2;", rows[1]);
                Assert.AreEqual("11;Company3;", rows[2]);
            }

            // enable this part, if SendRowsToErrorOutput = true
            //DtsVariable variable = context.Package.GetVariable("ErrorCustomersCount");
            //Assert.AreEqual(4, (int)variable.GetValue());
        }