コード例 #1
0
        public void SeperateCaches()
        {
            Claim c1 = NakedObjectsFramework.Persistor.Instances <Claim>().OrderBy(c => c.Id).First();
            Claim c2 = NakedObjectsFramework.Persistor.Instances <Claim>().OrderByDescending(c => c.Id).First();

            INakedObject claim1 = NakedObjectsFramework.GetNakedObject(c1);
            INakedObject claim2 = NakedObjectsFramework.GetNakedObject(c2);

            Assert.AreNotSame(claim1, claim2);

            mocks.HtmlHelper.ViewContext.HttpContext.Session.AddToCache(NakedObjectsFramework, claim1);
            mocks.HtmlHelper.ViewContext.HttpContext.Session.AddToCache(NakedObjectsFramework, claim2, ObjectCache.ObjectFlag.BreadCrumb);

            Assert.IsTrue(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Contains(claim1.Object));
            Assert.IsTrue(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework, ObjectCache.ObjectFlag.BreadCrumb).Contains(claim2.Object));

            Assert.IsFalse(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Contains(claim2.Object));
            Assert.IsFalse(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework, ObjectCache.ObjectFlag.BreadCrumb).Contains(claim1.Object));

            mocks.HtmlHelper.ViewContext.HttpContext.Session.ClearCachedObjects();

            Assert.IsFalse(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Contains(claim1.Object));
            Assert.IsTrue(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework, ObjectCache.ObjectFlag.BreadCrumb).Contains(claim2.Object));

            mocks.HtmlHelper.ViewContext.HttpContext.Session.ClearCachedObjects(ObjectCache.ObjectFlag.BreadCrumb);

            Assert.IsFalse(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework, ObjectCache.ObjectFlag.BreadCrumb).Contains(claim2.Object));
        }
コード例 #2
0
        public void AddNakedObjectToCache()
        {
            INakedObject claim = NakedObjectsFramework.GetNakedObject(NakedObjectsFramework.Persistor.Instances <Claim>().First());

            mocks.HtmlHelper.ViewContext.HttpContext.Session.AddToCache(NakedObjectsFramework, claim);

            Assert.IsTrue(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Contains(claim.Object));
        }
コード例 #3
0
        public void RemoveNakedObjectFromCacheNotThere()
        {
            INakedObject claim = NakedObjectsFramework.GetNakedObject(NakedObjectsFramework.Persistor.Instances <Claim>().First());

            mocks.HtmlHelper.ViewContext.HttpContext.Session.RemoveFromCache(NakedObjectsFramework, claim);
            Assert.IsFalse(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Contains(claim.Object));
            Assert.IsTrue(!mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Any());
        }
コード例 #4
0
        public void ActionsForHelper()
        {
            Claim claim = NakedObjectsFramework.Persistor.Instances <Claim>().First();
            INakedObjectAdapter       adapter = NakedObjectsFramework.GetNakedObject(claim);
            IEnumerable <IActionSpec> actions = NakedObjectsFramework.GetActions(adapter);

            Assert.AreEqual(8, actions.Count());
        }
コード例 #5
0
        public void GetObjectIdForNakedObjectObject()
        {
            Claim claim = NakedObjectsFramework.Persistor.Instances <Claim>().First();
            INakedObjectAdapter adapter = NakedObjectsFramework.GetNakedObject(claim);
            string id = NakedObjectsFramework.GetObjectId(adapter);

            Assert.AreEqual(id, objectId);
        }
コード例 #6
0
        public void ClearDisposedFromCache()
        {
            var claim = NakedObjectsFramework.GetNakedObject(NakedObjectsFramework.Persistor.Instances <Claim>().OrderByDescending(c => c.Id).First());

            mocks.HtmlHelper.ViewContext.HttpContext.Session.AddToCache(NakedObjectsFramework, claim);
            Assert.IsTrue(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Contains(claim.Object));

            NakedObjectsFramework.TransactionManager.StartTransaction();
            NakedObjectsFramework.Persistor.DestroyObject(claim);
            NakedObjectsFramework.TransactionManager.EndTransaction();

            Assert.IsFalse(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Contains(claim.Object));
        }
コード例 #7
0
        public void AddCollection()
        {
            var claimRepo        = NakedObjectsFramework.GetServices().OfType <ClaimRepository>().FirstOrDefault();
            var claimRepoAdapter = NakedObjectsFramework.GetNakedObject(claimRepo);
            var claims           = claimRepo.AllClaims();
            var claimsAdapter    = NakedObjectsFramework.GetNakedObject(claims);
            var mockOid          = CollectionMementoHelper.TestMemento(NakedObjectsFramework.LifecycleManager, NakedObjectsFramework.NakedObjectManager, NakedObjectsFramework.MetamodelManager, claimRepoAdapter, claimRepoAdapter.GetActionLeafNode("AllClaims"), new INakedObjectAdapter[] {});

            claimsAdapter.SetATransientOid(mockOid);

            var ca = Surface.GetObject(claimsAdapter.Object);

            mocks.HtmlHelper.ViewContext.HttpContext.Session.AddToCache(Surface, ca);
            Assert.IsTrue(((IEnumerable <object>)mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(Surface).First()).SequenceEqual(claims));
        }
コード例 #8
0
        [Test, Ignore] // temp ignore pending proper tests
        public void AddCollection()
        {
            var claim  = NakedObjectsFramework.Persistor.Instances <Claim>().First();
            var claims = new List <Claim> {
                claim
            };
            var claimAdapter  = NakedObjectsFramework.GetNakedObject(claim);
            var claimsAdapter = NakedObjectsFramework.GetNakedObject(claims);

            var mockOid = new CollectionMemento(NakedObjectsFramework.LifecycleManager, NakedObjectsFramework.NakedObjectManager, NakedObjectsFramework.MetamodelManager, claimAdapter, claimAdapter.GetActionLeafNode("ApproveItems"), new INakedObject[] { });

            claimsAdapter.SetATransientOid(mockOid);

            mocks.HtmlHelper.ViewContext.HttpContext.Session.AddToCache(NakedObjectsFramework, claimsAdapter);

            Assert.IsTrue(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Contains(claims));
            Assert.IsTrue(mocks.HtmlHelper.ViewContext.HttpContext.Session.AllCachedObjects(NakedObjectsFramework).Count() == 1);
        }