/// <exception cref="System.Exception"></exception>
 public virtual void TestIntArrayStoreObject()
 {
     ArrayHandlerTestCase.IntArrayHolder expectedItem = new ArrayHandlerTestCase.IntArrayHolder
                                                            (new int[] { 1, 2, 3 });
     Db().Store(expectedItem);
     Db().Purge(expectedItem);
     ArrayHandlerTestCase.IntArrayHolder readItem = (ArrayHandlerTestCase.IntArrayHolder
                                                     )((ArrayHandlerTestCase.IntArrayHolder)RetrieveOnlyInstance(typeof(ArrayHandlerTestCase.IntArrayHolder
                                                                                                                        )));
     Assert.AreNotSame(expectedItem, readItem);
     ArrayAssert.AreEqual(expectedItem._ints, readItem._ints);
     ArrayAssert.AreEqual(expectedItem._ints, readItem.JaggedInts());
 }
        public virtual void TestHandlerVersion()
        {
            ArrayHandlerTestCase.IntArrayHolder intArrayHolder = new ArrayHandlerTestCase.IntArrayHolder
                                                                     (new int[0]);
            Store(intArrayHolder);
            IReflectClass claxx         = Reflector().ForObject(intArrayHolder);
            ClassMetadata classMetadata = (ClassMetadata)Container().ProduceClassMetadata(claxx
                                                                                          );
            FieldMetadata fieldMetadata = classMetadata.FieldMetadataForName("_ints");
            ITypeHandler4 arrayHandler  = fieldMetadata.GetHandler();

            Assert.IsInstanceOf(typeof(ArrayHandler), arrayHandler);
            AssertCorrectedHandlerVersion(arrayHandler, 0, typeof(ArrayHandler0));
            AssertCorrectedHandlerVersion(arrayHandler, 1, typeof(ArrayHandler1));
            AssertCorrectedHandlerVersion(arrayHandler, 2, typeof(ArrayHandler3));
            AssertCorrectedHandlerVersion(arrayHandler, 3, typeof(ArrayHandler3));
            AssertCorrectedHandlerVersion(arrayHandler, HandlerRegistry.HandlerVersion, typeof(
                                              ArrayHandler));
        }
		/// <exception cref="System.Exception"></exception>
		public virtual void TestIntArrayStoreObject()
		{
			ArrayHandlerTestCase.IntArrayHolder expectedItem = new ArrayHandlerTestCase.IntArrayHolder
				(new int[] { 1, 2, 3 });
			Db().Store(expectedItem);
			Db().Purge(expectedItem);
			ArrayHandlerTestCase.IntArrayHolder readItem = (ArrayHandlerTestCase.IntArrayHolder
				)((ArrayHandlerTestCase.IntArrayHolder)RetrieveOnlyInstance(typeof(ArrayHandlerTestCase.IntArrayHolder
				)));
			Assert.AreNotSame(expectedItem, readItem);
			ArrayAssert.AreEqual(expectedItem._ints, readItem._ints);
			ArrayAssert.AreEqual(expectedItem._ints, readItem.JaggedInts());
		}
		public virtual void TestHandlerVersion()
		{
			ArrayHandlerTestCase.IntArrayHolder intArrayHolder = new ArrayHandlerTestCase.IntArrayHolder
				(new int[0]);
			Store(intArrayHolder);
			IReflectClass claxx = Reflector().ForObject(intArrayHolder);
			ClassMetadata classMetadata = (ClassMetadata)Container().ProduceClassMetadata(claxx
				);
			FieldMetadata fieldMetadata = classMetadata.FieldMetadataForName("_ints");
			ITypeHandler4 arrayHandler = fieldMetadata.GetHandler();
			Assert.IsInstanceOf(typeof(ArrayHandler), arrayHandler);
			AssertCorrectedHandlerVersion(arrayHandler, 0, typeof(ArrayHandler0));
			AssertCorrectedHandlerVersion(arrayHandler, 1, typeof(ArrayHandler1));
			AssertCorrectedHandlerVersion(arrayHandler, 2, typeof(ArrayHandler3));
			AssertCorrectedHandlerVersion(arrayHandler, 3, typeof(ArrayHandler3));
			AssertCorrectedHandlerVersion(arrayHandler, HandlerRegistry.HandlerVersion, typeof(
				ArrayHandler));
		}