BufferTest.cpp 1012 B

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