dbsize.sql 1.4 KB

123456789101112131415161718192021222324252627282930313233
  1. -- pg_size_bytes() tests
  2. SELECT size, pg_size_bytes(size) FROM
  3. (VALUES ('1'), ('123bytes'), ('1kB'), ('1MB'), (' 1 GB'), ('1.5 GB '),
  4. ('1TB'), ('3000 TB'), ('1e6 MB')) x(size);
  5. -- case-insensitive units are supported
  6. SELECT size, pg_size_bytes(size) FROM
  7. (VALUES ('1'), ('123bYteS'), ('1kb'), ('1mb'), (' 1 Gb'), ('1.5 gB '),
  8. ('1tb'), ('3000 tb'), ('1e6 mb')) x(size);
  9. -- negative numbers are supported
  10. SELECT size, pg_size_bytes(size) FROM
  11. (VALUES ('-1'), ('-123bytes'), ('-1kb'), ('-1mb'), (' -1 Gb'), ('-1.5 gB '),
  12. ('-1tb'), ('-3000 TB'), ('-10e-1 MB')) x(size);
  13. -- different cases with allowed points
  14. SELECT size, pg_size_bytes(size) FROM
  15. (VALUES ('-1.'), ('-1.kb'), ('-1. kb'), ('-0. gb'),
  16. ('-.1'), ('-.1kb'), ('-.1 kb'), ('-.0 gb')) x(size);
  17. -- invalid inputs
  18. SELECT pg_size_bytes('1 AB');
  19. SELECT pg_size_bytes('1 AB A');
  20. SELECT pg_size_bytes('1 AB A ');
  21. SELECT pg_size_bytes('9223372036854775807.9');
  22. SELECT pg_size_bytes('1e100');
  23. SELECT pg_size_bytes('1e1000000000000000000');
  24. SELECT pg_size_bytes('1 byte'); -- the singular "byte" is not supported
  25. SELECT pg_size_bytes('');
  26. SELECT pg_size_bytes('kb');
  27. SELECT pg_size_bytes('..');
  28. SELECT pg_size_bytes('-.');
  29. SELECT pg_size_bytes('-.kb');
  30. SELECT pg_size_bytes('-. kb');
  31. SELECT pg_size_bytes('.+912');
  32. SELECT pg_size_bytes('+912+ kB');
  33. SELECT pg_size_bytes('++123 kB');