public void TestPreWrite()
        {
            CreateBasicDirectoryProperty();
            _property.PreWrite();

            // shouldn't Change anything at all
            VerifyProperty();
            VerifyChildren(0);

            // now try Adding 1 property
            CreateBasicDirectoryProperty();
            _property.AddChild(new LocalProperty(1));
            _property.PreWrite();

            // update children index
            _testblock[0x4C] = 1;
            _testblock[0x4D] = 0;
            _testblock[0x4E] = 0;
            _testblock[0x4F] = 0;
            VerifyProperty();
            VerifyChildren(1);

            // now try Adding 2 properties
            CreateBasicDirectoryProperty();
            _property.AddChild(new LocalProperty(1));
            _property.AddChild(new LocalProperty(2));
            _property.PreWrite();

            // update children index
            _testblock[0x4C] = 2;
            _testblock[0x4D] = 0;
            _testblock[0x4E] = 0;
            _testblock[0x4F] = 0;
            VerifyProperty();
            VerifyChildren(2);

            // beat on the children allocation code
            for (int count = 1; count < 100; count++)
            {
                CreateBasicDirectoryProperty();
                for (int j = 1; j < (count + 1); j++)
                {
                    _property.AddChild(new LocalProperty(j));
                }
                _property.PreWrite();
                VerifyChildren(count);
            }
        }