2
0

OrmTestMemory.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. namespace Test\PhpDevCommunity\PaperORM\Common;
  3. use PhpDevCommunity\PaperORM\EntityManager;
  4. use PhpDevCommunity\UniTester\TestCase;
  5. use Test\PhpDevCommunity\PaperORM\Entity\UserTest;
  6. use Test\PhpDevCommunity\PaperORM\Helper\DataBaseHelperTest;
  7. class OrmTestMemory extends TestCase
  8. {
  9. protected function setUp(): void
  10. {
  11. }
  12. protected function tearDown(): void
  13. {
  14. }
  15. protected function execute(): void
  16. {
  17. foreach (DataBaseHelperTest::drivers() as $params) {
  18. $em = new EntityManager($params);
  19. DataBaseHelperTest::init($em, 10, false);
  20. $memory = memory_get_usage();
  21. $users = $em->getRepository(UserTest::class)
  22. ->findBy()
  23. ->toObject();
  24. $this->assertStrictEquals(10, count($users));
  25. foreach ($users as $user) {
  26. $this->assertInstanceOf(UserTest::class, $user);
  27. $this->assertNotEmpty($user);
  28. }
  29. $memory = memory_get_usage(true) - $memory;
  30. $memory = ceil($memory / 1024 / 1024);
  31. $this->assertTrue( $memory <= 30 );
  32. $em->getConnection()->close();
  33. }
  34. }
  35. }