BufferTest.cpp 972 B

12345678910111213141516171819202122232425262728
  1. 
  2. #include "../testTools.h"
  3. START_TEST(Buffer)
  4. {
  5. Buffer a; // Empty handle
  6. Buffer b = buffer_create(0); // Empty buffer
  7. Buffer c = buffer_create(7); // Buffer
  8. ASSERT_EQUAL(buffer_exists(a), false);
  9. ASSERT_EQUAL(buffer_exists(b), true);
  10. ASSERT_EQUAL(buffer_exists(c), true);
  11. ASSERT_EQUAL(buffer_getSize(a), 0);
  12. ASSERT_EQUAL(buffer_getSize(b), 0);
  13. ASSERT_EQUAL(buffer_getSize(c), 7);
  14. ASSERT_EQUAL(buffer_getUseCount(a), 0);
  15. ASSERT_EQUAL(buffer_getUseCount(b), 1);
  16. ASSERT_EQUAL(buffer_getUseCount(c), 1);
  17. Buffer d = buffer_clone(a);
  18. Buffer e = buffer_clone(b); // Empty buffers are reused, which increases the use count.
  19. Buffer f = buffer_clone(c);
  20. ASSERT_EQUAL(buffer_getUseCount(a), 0);
  21. ASSERT_EQUAL(buffer_getUseCount(b), 2);
  22. ASSERT_EQUAL(buffer_getUseCount(c), 1);
  23. ASSERT_EQUAL(buffer_getUseCount(d), 0);
  24. ASSERT_EQUAL(buffer_getUseCount(e), 2);
  25. ASSERT_EQUAL(buffer_getUseCount(f), 1);
  26. }
  27. END_TEST