public void TestCRUD_Cat()
        {
            o1 = new Cat();
            // insert
            o1.Persist();
            Assert.IsTrue(o1.Id > 0, "No identity assigned on insert.");
            // select
            o2 = Cat.Retrieve(o1.Id);
            // verify select/insert
            Assert.IsNotNull(o2.Id, "The object could not be retrieved from the database!");
            Assert.AreEqual(o1.Id, o2.Id, "The object could not be retrieved from the database!");
            // update
            o2.Persist();
            // verify update
            o1 = Cat.Retrieve(o2.Id);
            // delete
            o2.Remove();
            // verify delete by counting the number of rows
            SqlBuilder sb = new SqlBuilder(StatementType.Count, typeof(Cat));

            sb.AddConstraint(Operator.Equals, "Id", o1.Id);
            SqlResult sr = Broker.Execute(sb.GetStatement(true));

            Assert.AreEqual(0, sr.Count, "Object not removed");
        }
        public void TestStringToType()
        {
            // create entry in db
            o1 = new Dog();
            Type type = Type.GetType("Gentle.Framework.Tests.Dog");

            Assert.IsNotNull(type, "Unable to create type from string.");
            type = Type.GetType(o1.GetType().FullName);
            Assert.IsNotNull(type, "Unable to create type from string.");
        }
 public void TestTypeOverride()
 {
     // create entry in db
     o1 = new Dog();
     o1.Persist();
     // check dynamic type override when using base class retrieve
     o2 = Animal.Retrieve(o1.Id);
     Assert.IsTrue(o2 is Dog, "Object construction did not use type from database.");
     // delete
     o2.Remove();
 }
        public void TestTypeFieldOnPersist()
        {
            o1 = new Dog();
            Assert.IsNull(o1.Type, "Type was initialized by object itself.");
            // insert
            o1.Persist();
            Assert.IsNotNull(o1.Type, "Type was not initialized on insert (persist).");
            string typeName = o1.Type.Split(',')[0];

            Assert.AreEqual("Gentle.Framework.Tests.Dog", typeName, "Invalid type string.");
            // check that updates dont mess with the string
            o1.Persist();
            Assert.IsNotNull(o1.Type, "Type was not initialized on update (persist).");
            typeName = o1.Type.Split(',')[0];
            Assert.AreEqual("Gentle.Framework.Tests.Dog", typeName, "Invalid type string.");
            // delete
            o1.Remove();
        }
Beispiel #5
0
		public void TestCRUD_Cat()
		{
			o1 = new Cat();
			// insert
			o1.Persist();
			Assert.IsTrue( o1.Id > 0, "No identity assigned on insert." );
			// select
			o2 = Cat.Retrieve( o1.Id );
			// verify select/insert
			Assert.IsNotNull( o2.Id, "The object could not be retrieved from the database!" );
			Assert.AreEqual( o1.Id, o2.Id, "The object could not be retrieved from the database!" );
			// update
			o2.Persist();
			// verify update
			o1 = Cat.Retrieve( o2.Id );
			// delete
			o2.Remove();
			// verify delete by counting the number of rows
			SqlBuilder sb = new SqlBuilder( StatementType.Count, typeof(Cat) );
			sb.AddConstraint( Operator.Equals, "Id", o1.Id );
			SqlResult sr = Broker.Execute( sb.GetStatement( true ) );
			Assert.AreEqual( 0, sr.Count, "Object not removed" );
		}
        public void TestTypeFilter()
        {
            // create entries of different types in db
            o1 = new Dog();
            o1.Persist();
            o2 = new Cat();
            o2.Persist();
            // fetch Dog list
            IList list = Broker.RetrieveList(typeof(Dog));

            Assert.AreEqual(1, list.Count, "Filter error.");
            Assert.AreEqual(typeof(Dog), list[0].GetType(), "Filter error.");
            // fetch Cat list
            list = Broker.RetrieveList(typeof(Cat));
            Assert.AreEqual(1, list.Count, "Filter error.");
            Assert.AreEqual(typeof(Cat), list[0].GetType(), "Filter error.");
            // fetch Animal list
            list = Broker.RetrieveList(typeof(Animal));
            Assert.AreEqual(2, list.Count, "Filter error.");
            // delete
            o1.Remove();
            o2.Remove();
        }
Beispiel #7
0
		public void TestTypeFilter()
		{
			// create entries of different types in db
			o1 = new Dog();
			o1.Persist();
			o2 = new Cat();
			o2.Persist();
			// fetch Dog list
			IList list = Broker.RetrieveList( typeof(Dog) );
			Assert.AreEqual( 1, list.Count, "Filter error." );
			Assert.AreEqual( typeof(Dog), list[ 0 ].GetType(), "Filter error." );
			// fetch Cat list
			list = Broker.RetrieveList( typeof(Cat) );
			Assert.AreEqual( 1, list.Count, "Filter error." );
			Assert.AreEqual( typeof(Cat), list[ 0 ].GetType(), "Filter error." );
			// fetch Animal list
			list = Broker.RetrieveList( typeof(Animal) );
			Assert.AreEqual( 2, list.Count, "Filter error." );
			// delete
			o1.Remove();
			o2.Remove();
		}
Beispiel #8
0
		public void TestTypeOverride()
		{
			// create entry in db
			o1 = new Dog();
			o1.Persist();
			// check dynamic type override when using base class retrieve
			o2 = Animal.Retrieve( o1.Id );
			Assert.IsTrue( o2 is Dog, "Object construction did not use type from database." );
			// delete
			o2.Remove();
		}
Beispiel #9
0
		public void TestStringToType()
		{
			// create entry in db
			o1 = new Dog();
			Type type = Type.GetType( "Gentle.Framework.Tests.Dog" );
			Assert.IsNotNull( type, "Unable to create type from string." );
			type = Type.GetType( o1.GetType().FullName );
			Assert.IsNotNull( type, "Unable to create type from string." );
		}
Beispiel #10
0
		public void TestTypeFieldOnPersist()
		{
			o1 = new Dog();
			Assert.IsNull( o1.Type, "Type was initialized by object itself." );
			// insert
			o1.Persist();
			Assert.IsNotNull( o1.Type, "Type was not initialized on insert (persist)." );
			string typeName = o1.Type.Split( ',' )[ 0 ];
			Assert.AreEqual( "Gentle.Framework.Tests.Dog", typeName, "Invalid type string." );
			// check that updates dont mess with the string
			o1.Persist();
			Assert.IsNotNull( o1.Type, "Type was not initialized on update (persist)." );
			typeName = o1.Type.Split( ',' )[ 0 ];
			Assert.AreEqual( "Gentle.Framework.Tests.Dog", typeName, "Invalid type string." );
			// delete
			o1.Remove();
		}