public unsafe void ExpandAfterShrinkPool_AllocatesDefault() { LazyUTF8String.ResetPool(new MockTracer(), DefaultIndexEntryCount); string fileAndFolderNames = "folderSDKfile.txtDKfolders"; UseASCIIBytePointer( fileAndFolderNames, bufferPtr => { int initialBytePoolSize = LazyUTF8String.BytePoolSize(); int initialStringPoolSize = LazyUTF8String.StringPoolSize(); LazyUTF8String.FromByteArray(bufferPtr + 6, 3); LazyUTF8String.FromByteArray(bufferPtr + 17, 2); LazyUTF8String.ShrinkPool(); CheckPoolSizes(expectedBytePoolSize: 6, expectedStringPoolSize: 2); LazyUTF8String.FreePool(); CheckPoolSizes(expectedBytePoolSize: 6, expectedStringPoolSize: 2); LazyUTF8String.ShrinkPool(); CheckPoolSizes(expectedBytePoolSize: 0, expectedStringPoolSize: 0); LazyUTF8String.FromByteArray(bufferPtr + 6, 3); CheckPoolSizes(expectedBytePoolSize: initialBytePoolSize, expectedStringPoolSize: initialStringPoolSize); LazyUTF8String.ShrinkPool(); CheckPoolSizes(expectedBytePoolSize: 3, expectedStringPoolSize: 1); }); }
public unsafe void ShrinkPool_DecreasesPoolSize() { LazyUTF8String.ResetPool(new MockTracer(), DefaultIndexEntryCount); string fileAndFolderNames = "folderSDKfile.txtDKfolders"; UseASCIIBytePointer( fileAndFolderNames, bufferPtr => { LazyUTF8String firstFolder = LazyUTF8String.FromByteArray(bufferPtr + 6, 3); LazyUTF8String secondFolder = LazyUTF8String.FromByteArray(bufferPtr + 17, 2); LazyUTF8String.ShrinkPool(); CheckPoolSizes(expectedBytePoolSize: 6, expectedStringPoolSize: 2); }); }
public unsafe void PoolSizeIncreasesAfterShrinking() { LazyUTF8String.ResetPool(); string fileAndFolderNames = "folderSDKfile.txtDKfolders"; UseASCIIBytePointer( fileAndFolderNames, bufferPtr => { int initialBytePoolSize = LazyUTF8String.BytePoolSize(); int initialStringPoolSize = LazyUTF8String.StringPoolSize(); LazyUTF8String.FromByteArray(bufferPtr + 6, 3); LazyUTF8String.FromByteArray(bufferPtr + 17, 2); LazyUTF8String.ShrinkPool(); CheckPoolSizes(expectedBytePoolSize: 6, expectedStringPoolSize: 2); LazyUTF8String.FromByteArray(bufferPtr + 6, 3); LazyUTF8String.FromByteArray(bufferPtr + 17, 2); LazyUTF8String.FromByteArray(bufferPtr, 6); CheckPoolSizes(expectedBytePoolSize: 6 + initialBytePoolSize, expectedStringPoolSize: 2 + initialStringPoolSize); }); }