public void ReadWriteLargeBlob()
		{
			ISession s = OpenSession();
			BinaryBlobClass b = new BinaryBlobClass();
			b.BinaryBlob = UnicodeEncoding.UTF8.GetBytes(new string('T', 10000));
			s.Save(b);
			s.Flush();
			s.Close();

			s = OpenSession();
			b = (BinaryBlobClass) s.Load(typeof(BinaryBlobClass), b.Id);
			ObjectAssert.AreEqual(UnicodeEncoding.UTF8.GetBytes(new string('T', 10000)), b.BinaryBlob);
			s.Delete(b);
			s.Flush();
			s.Close();
		}
		public void ReadWrite() 
		{
			ISession s = OpenSession();
			BinaryBlobClass b = new BinaryBlobClass();
			b.BinaryBlob = System.Text.UnicodeEncoding.UTF8.GetBytes("foo/bar/baz");
			s.Save(b);
			s.Flush();
			s.Close();

			s = OpenSession();
			b = (BinaryBlobClass)s.Load( typeof(BinaryBlobClass), b.Id );
			ObjectAssert.AreEqual( System.Text.UnicodeEncoding.UTF8.GetBytes("foo/bar/baz") , b.BinaryBlob );
			s.Delete( b );
			s.Flush();
			s.Close();
		}
        public void ReadWriteLargeBlob()
        {
            ISession        s = OpenSession();
            BinaryBlobClass b = new BinaryBlobClass();

            b.BinaryBlob = UnicodeEncoding.UTF8.GetBytes(new string('T', 10000));
            s.Save(b);
            s.Flush();
            s.Close();

            s = OpenSession();
            b = (BinaryBlobClass)s.Load(typeof(BinaryBlobClass), b.Id);
            ObjectAssert.AreEqual(UnicodeEncoding.UTF8.GetBytes(new string('T', 10000)), b.BinaryBlob);
            s.Delete(b);
            s.Flush();
            s.Close();
        }
        public async Task ReadWriteLargeBlobAsync()
        {
            ISession        s = OpenSession();
            BinaryBlobClass b = new BinaryBlobClass();

            b.BinaryBlob = UnicodeEncoding.UTF8.GetBytes(new string('T', 10000));
            await(s.SaveAsync(b));
            await(s.FlushAsync());
            s.Close();

            s = OpenSession();
            b = (BinaryBlobClass)await(s.LoadAsync(typeof(BinaryBlobClass), b.Id));
            ObjectAssert.AreEqual(UnicodeEncoding.UTF8.GetBytes(new string('T', 10000)), b.BinaryBlob);
            await(s.DeleteAsync(b));
            await(s.FlushAsync());
            s.Close();
        }
		public void ReadWriteZeroLen()
		{
			object savedId;
			using (ISession s = OpenSession())
			{
				BinaryBlobClass b = new BinaryBlobClass();
				b.BinaryBlob = new byte[0];
				savedId = s.Save(b);
				s.Flush();
			}

			using (var s = OpenSession())
			{
				var b = s.Get<BinaryBlobClass>(savedId);
				b.BinaryBlob.Should().Not.Be.Null().And.Have.Count.EqualTo(0);
				s.Delete(b);
				s.Flush();
			}
		}
		public void ReadWriteZeroLen()
		{
			object savedId;
			using (ISession s = OpenSession())
			{
				BinaryBlobClass b = new BinaryBlobClass();
				b.BinaryBlob = new byte[0];
				savedId = s.Save(b);
				s.Flush();
			}

			using (var s = OpenSession())
			{
				var b = s.Get<BinaryBlobClass>(savedId);
				Assert.That(b.BinaryBlob, Is.Not.Null.And.Length.EqualTo(0));
				s.Delete(b);
				s.Flush();
			}
		}
        public void ReadWriteZeroLen()
        {
            object savedId;

            using (ISession s = OpenSession())
            {
                BinaryBlobClass b = new BinaryBlobClass();
                b.BinaryBlob = Array.Empty <byte>();
                savedId      = s.Save(b);
                s.Flush();
            }

            using (var s = OpenSession())
            {
                var b = s.Get <BinaryBlobClass>(savedId);
                Assert.That(b.BinaryBlob, Is.Not.Null.And.Length.EqualTo(0));
                s.Delete(b);
                s.Flush();
            }
        }
        public async Task ReadWriteZeroLenAsync()
        {
            object savedId;

            using (ISession s = OpenSession())
            {
                BinaryBlobClass b = new BinaryBlobClass();
                b.BinaryBlob = new byte[0];
                savedId      = await(s.SaveAsync(b));
                await(s.FlushAsync());
            }

            using (var s = OpenSession())
            {
                var b = await(s.GetAsync <BinaryBlobClass>(savedId));
                Assert.That(b.BinaryBlob, Is.Not.Null.And.Length.EqualTo(0));
                await(s.DeleteAsync(b));
                await(s.FlushAsync());
            }
        }
        public void ReadWriteZeroLen()
        {
            object savedId;

            using (ISession s = OpenSession())
            {
                BinaryBlobClass b = new BinaryBlobClass();
                b.BinaryBlob = new byte[0];
                savedId      = s.Save(b);
                s.Flush();
            }

            using (var s = OpenSession())
            {
                var b = s.Get <BinaryBlobClass>(savedId);
                b.BinaryBlob.Should().Not.Be.Null().And.Have.Count.EqualTo(0);
                s.Delete(b);
                s.Flush();
            }
        }