public void ProviderCancelAfterSuccessfulSave()
        {
            var context = GetContext();

            var provider = new Csla.Xaml.CslaDataProvider();

            provider.ManageObjectLifetime = true;
            CustomerList.GetCustomerList((o1, e1) =>
            {
                Csla.ApplicationContext.GlobalContext.Clear();
                var custs = e1.Object;
                int count = custs.Count;
                provider.ManageObjectLifetime = true;
                provider.ObjectInstance       = custs;
                provider.RemoveItem(null, new Csla.Xaml.ExecuteEventArgs {
                    MethodParameter = custs[0]
                });
                bool continueTest     = true;
                provider.DataChanged += (o3, e3) =>
                {
                    if (continueTest)
                    {
                        continueTest           = false;
                        CustomerList savedList = provider.Data as CustomerList;
                        context.Assert.AreEqual(count - 1, savedList.Count);
                        context.Assert.Success();
                    }
                };
                provider.Save();
            });
            var tmp = provider.Data;

            context.Complete();
        }
        public void If_Fetch_returns_X_items_and_then_DataSource_removes_one_and_adds_two_Count_should_be_X_plus_1()
        {
            var context = GetContext();

            var provider = new Csla.Xaml.CslaDataProvider();

            provider.ManageObjectLifetime = true;
            CustomerList.GetCustomerList((o1, e1) =>
            {
                Csla.ApplicationContext.GlobalContext.Clear();
                var custs = e1.Object;
                int count = custs.Count;
                provider.ObjectInstance = custs;
                provider.RemoveItem(null, new Csla.Xaml.ExecuteEventArgs {
                    MethodParameter = custs[0]
                });
                provider.AddNewItem();
                provider.AddNewItem();
                context.Assert.AreEqual(count - 1 + 2, custs.Count);
                context.Assert.Success();
            });
            var tmp = provider.Data;

            context.Complete();
        }
Example #3
0
        public void TestCancelError()
        {
            ProviderList list = ProviderList.GetList();
              Csla.Xaml.CslaDataProvider dp = new Csla.Xaml.CslaDataProvider();
              list.BeginEdit();
              dp.ManageObjectLifetime = true;
              dp.ObjectInstance = list;
              dp.RemoveItem(null, new Xaml.ExecuteEventArgs { MethodParameter = list[0] });
              dp.Save();

              Assert.AreEqual(1, list.Count);

              dp.Cancel();
              Assert.AreEqual(2, list.Count);
        }
        public void TestCancelError()
        {
            ProviderList list = ProviderList.GetList();

            Csla.Xaml.CslaDataProvider dp = new Csla.Xaml.CslaDataProvider();
            list.BeginEdit();
            dp.ManageObjectLifetime = true;
            dp.ObjectInstance       = list;
            dp.RemoveItem(null, new Xaml.ExecuteEventArgs {
                MethodParameter = list[0]
            });
            dp.Save();

            Assert.AreEqual(1, list.Count);

            dp.Cancel();
            Assert.AreEqual(2, list.Count);
        }
        public void ProviderCancelAfterExceptionInSave()
        {
            var context = GetContext();

            var provider = new Csla.Xaml.CslaDataProvider();

            provider.ManageObjectLifetime = true;
            CustomerWithErrorList.GetCustomerWithErrorList((o1, e1) =>
            {
                Csla.ApplicationContext.GlobalContext.Clear();
                var custs = e1.Object;
                int count = custs.Count;
                provider.ObjectInstance = custs;
                provider.RemoveItem(null, new Csla.Xaml.ExecuteEventArgs {
                    MethodParameter = custs[0]
                });


                provider.DataChanged += (o4, e4) =>
                {
                    if (provider.Data != null)
                    {
                        CustomerWithErrorList savedList = provider.Data as CustomerWithErrorList;
                        context.Assert.AreEqual(count, savedList.Count);
                        context.Assert.Success();
                    }
                };

                provider.PropertyChanged += (o3, e3) =>
                {
                    if (e3.PropertyName == "Error")
                    {
                        provider.Cancel();
                    }
                };
                provider.Save();
            });
            var tmp = provider.Data;

            context.Complete();
        }
    public void ProviderCancelAfterSuccessfulSave()
    {
      var context = GetContext();

      var provider = new Csla.Xaml.CslaDataProvider();
      provider.ManageObjectLifetime = true;
      CustomerList.GetCustomerList((o1, e1) =>
      {
        Csla.ApplicationContext.GlobalContext.Clear();
        var custs = e1.Object;
        int count = custs.Count;
        provider.ManageObjectLifetime = true;
        provider.ObjectInstance = custs;
        provider.RemoveItem(null, new Csla.Xaml.ExecuteEventArgs { MethodParameter = custs[0] });
        bool continueTest = true;
        provider.DataChanged += (o3, e3) =>
        {
          if (continueTest)
          {
            continueTest = false;
            CustomerList savedList = provider.Data as CustomerList;
            context.Assert.AreEqual(count - 1, savedList.Count);
            context.Assert.Success();
          }

        };
        provider.Save();


      });
      var tmp = provider.Data;
      context.Complete();
    }
    public void ProviderCancelAfterExceptionInSave()
    {
      var context = GetContext();

      var provider = new Csla.Xaml.CslaDataProvider();
      provider.ManageObjectLifetime = true;
      CustomerWithErrorList.GetCustomerWithErrorList((o1, e1) =>
      {
        Csla.ApplicationContext.GlobalContext.Clear();
        var custs = e1.Object;
        int count = custs.Count;
        provider.ObjectInstance = custs;
        provider.RemoveItem(null, new Csla.Xaml.ExecuteEventArgs { MethodParameter = custs[0] });


        provider.DataChanged += (o4, e4) =>
        {
          if (provider.Data != null)
          {
            CustomerWithErrorList savedList = provider.Data as CustomerWithErrorList;
            context.Assert.AreEqual(count, savedList.Count);
            context.Assert.Success();
          }
        };

        provider.PropertyChanged += (o3, e3) =>
          {
            if (e3.PropertyName == "Error")
            {
              provider.Cancel();
            }

          };
        provider.Save();


      });
      var tmp = provider.Data;
      context.Complete();
    }
    public void If_Fetch_returns_X_items_and_then_DataSource_removes_one_and_adds_two_Count_should_be_X_plus_1()
    {
      var context = GetContext();

      var provider = new Csla.Xaml.CslaDataProvider();
      provider.ManageObjectLifetime = true;
      CustomerList.GetCustomerList((o1, e1) =>
      {
        Csla.ApplicationContext.GlobalContext.Clear();
        var custs = e1.Object;
        int count = custs.Count;
        provider.ObjectInstance = custs;
        provider.RemoveItem(null, new Csla.Xaml.ExecuteEventArgs { MethodParameter = custs[0] });
        provider.AddNewItem();
        provider.AddNewItem();
        context.Assert.AreEqual(count - 1 + 2, custs.Count);
        context.Assert.Success();

      });
      var tmp = provider.Data;
      context.Complete();
    }