コード例 #1
0
        public void ObjectPropertyCreatesFolder()
        {
            var db = new ObjectPropertyDatabase();

            db.Object = new TestObject();

            Assert.IsTrue(((ISexyDatabase)db).Node.PropertyNodes.Values.Cast <DbObjectPropertyNode>().Single().Directory.Exists);
        }
コード例 #2
0
        public async Task CreatingFolderCreatesObject()
        {
            var db   = new ObjectPropertyDatabase();
            var node = (DbObjectPropertyNode)((ISexyDatabase)db).Node.PropertyNodes.Values.Single();

            await db.CreateDirectory(node.Directory);

            Assert.IsNotNull(db.Object);
        }
コード例 #3
0
        public void NullingOutObjectPropertyDeletesFolder()
        {
            var db = new ObjectPropertyDatabase();

            db.Object = new TestObject();
            db.Object = null;

            Assert.IsFalse(((ISexyDatabase)db).Node.PropertyNodes.Values.Cast <DbObjectPropertyNode>().Single().Directory.Exists);
        }
コード例 #4
0
        public async Task SubpropertyIsSaved()
        {
            var db = new ObjectPropertyDatabase();

            db.Object = new TestObject();
            db.Object.StringProperty = "foo";

            await db.WaitForIdle();

            Assert.AreEqual("foo", File.ReadAllText(((ISexyDatabase)db).Node.PropertyNodes.Values.Cast <DbObjectPropertyNode>().Single().Object.PropertyNodes.Values.Cast <DbValuePropertyNode>().Single().File.FullName));
        }
コード例 #5
0
        public async Task SubpropertyIsLoaded()
        {
            var db = new ObjectPropertyDatabase();

            db.Object = new TestObject();
            db.Object.StringProperty = "foo";

            await db.WaitForIdle();

            var file = ((ISexyDatabase)db).Node.PropertyNodes.Values.Cast <DbObjectPropertyNode>().Single().Object.PropertyNodes.Values.Cast <DbValuePropertyNode>().Single().File;
            await db.EditFile(file, "bar");

            Assert.AreEqual("bar", db.Object.StringProperty);
        }