Пример #1
0
 private bool LoadModel(HelloModel model)
 {
     model.Good     = Models.Get <GoodModel>(Uri.Model("good"));
     model.Empty    = Models.Get <EmptyModel>(Uri.Scheme("empty").Model("empty"));
     model.Greeting = "Hello";
     return(true);
 }
        public void ShouldMakeModelAvailableForURI()
        {
            HelloModel model = Inventory.Get <HelloModel>(Name);

            Assert.AreEqual(Name, model.Uri);
            Assert.AreEqual(1, model.ChangedCount);
        }
        public void ShouldClearInventoryWhenProviderCallsAbort()
        {
            HelloModel model = Inventory.Get <HelloModel>(Name);

            Assert.AreEqual(3, Inventory.Count);
            model.Good.Abort();
            Assert.AreEqual(1, Inventory.Count);    // because model.Empty is attached to the different provider.
            Assert.AreEqual(1, Inventory.Providers.Count());
            Assert.IsTrue(model.DetachedCallback);
        }
Пример #4
0
 private bool SaveModel(HelloModel model)
 {
     try
     {
         var greet = Models.Get <HelloModel>(Uri.Model("greeting"));
         greet.Greeting = Responses[model.Greeting.ToLower()];
         InvokeChanged(greet, ChangingSource.Save);
         return(true);
     }
     catch (KeyNotFoundException)
     {
         return(false);
     }
 }
        public void ShouldClearInventoryAfterDetaching()
        {
            HelloModel model = Inventory.Get <HelloModel>(Name);

            Assert.AreEqual(3, Inventory.Count);
            Assert.IsFalse(model.DetachedCallback);

            model.Empty.Detach();
            Assert.AreEqual(2, Inventory.Count);

            model.Good.Detach();
            Assert.AreEqual(1, Inventory.Count);

            model.Detach();
            Assert.AreEqual(0, Inventory.Count);
            Assert.IsTrue(model.DetachedCallback);
        }
        public void ShouldCloseProviderIfThereAreNotAttachedModels()
        {
            /// <see>
            /// model, model.Good => HelloMachine
            /// model.Empty => EmptyProvider
            /// </see>

            HelloModel model = Inventory.Get <HelloModel>(Name);

            Assert.AreEqual(2, Inventory.Providers.Count());

            model.Empty.Detach();
            Assert.AreEqual(1, Inventory.Providers.Count());
            model.Good.Detach();
            Assert.AreEqual(1, Inventory.Providers.Count());
            model.Detach();
            Assert.AreEqual(0, Inventory.Providers.Count());
        }