BxDolStudioAgentsProtectedRecordsTest.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. class BxDolStudioAgentsProtectedRecordsAgentsProxy extends BxBaseStudioAgentsAgents
  3. {
  4. public function deleteRecord($iId)
  5. {
  6. return $this->_delete($iId);
  7. }
  8. protected function _getAgentObjectById($iId)
  9. {
  10. return ['id' => $iId, 'name' => 'una_operator'];
  11. }
  12. }
  13. class BxDolStudioAgentsProtectedRecordsModelsProxy extends BxBaseStudioAgentsModels
  14. {
  15. public function deleteRecord($iId)
  16. {
  17. return $this->_delete($iId);
  18. }
  19. }
  20. class BxDolStudioAgentsProtectedRecordsKnowledgeProxy extends BxBaseStudioAgentsVectorStore
  21. {
  22. public function deleteRecord($iId)
  23. {
  24. return $this->_delete($iId);
  25. }
  26. }
  27. class BxDolStudioAgentsProtectedRecordsTest extends BxDolTestCase
  28. {
  29. public function testUnaOperatorCannotBeDeletedThroughGridHandler()
  30. {
  31. $oGrid = (new ReflectionClass(BxDolStudioAgentsProtectedRecordsAgentsProxy::class))->newInstanceWithoutConstructor();
  32. $this->assertFalse($oGrid->deleteRecord(1));
  33. $this->assertSame('', $this->bxCallProtected($oGrid, '_getActionDelete', 'single', 'delete', [], true, false, ['name' => 'una_operator']));
  34. }
  35. public function testUnaProxyModelCannotBeDeletedThroughGridHandler()
  36. {
  37. $oDb = $this->getMockBuilder(BxDolStudioAgentsQuery::class)
  38. ->disableOriginalConstructor()
  39. ->onlyMethods(['getModelsBy'])
  40. ->getMock();
  41. $oDb->expects($this->once())
  42. ->method('getModelsBy')
  43. ->willReturn(['id' => 1, 'type' => 'una-proxy', 'duplicate' => 1]);
  44. $oGrid = (new ReflectionClass(BxDolStudioAgentsProtectedRecordsModelsProxy::class))->newInstanceWithoutConstructor();
  45. $this->bxSetProtected($oGrid, '_oDb', $oDb, BxDolStudioGridAgents::class);
  46. $this->assertFalse($oGrid->deleteRecord(1));
  47. $this->assertSame('', $this->bxCallProtected($oGrid, '_getActionDelete', 'single', 'delete', [], true, false, ['type' => 'una-proxy', 'duplicate' => 1]));
  48. }
  49. public function testUnaProxyKnowledgeCannotBeDeletedThroughGridHandler()
  50. {
  51. $oDb = $this->getMockBuilder(BxDolStudioAgentsQuery::class)
  52. ->disableOriginalConstructor()
  53. ->onlyMethods(['getVectorStoreById'])
  54. ->getMock();
  55. $oDb->expects($this->once())
  56. ->method('getVectorStoreById')
  57. ->willReturn(['id' => 1, 'type' => 'una-proxy', 'duplicate' => 1]);
  58. $oGrid = (new ReflectionClass(BxDolStudioAgentsProtectedRecordsKnowledgeProxy::class))->newInstanceWithoutConstructor();
  59. $this->bxSetProtected($oGrid, '_oDb', $oDb, BxDolStudioGridAgents::class);
  60. $this->assertFalse($oGrid->deleteRecord(1));
  61. $this->assertSame('', $this->bxCallProtected($oGrid, '_getActionDelete', 'single', 'delete', [], true, false, ['type' => 'una-proxy', 'duplicate' => 1]));
  62. $this->assertSame('', $this->bxCallProtected($oGrid, '_getActionAddData', 'single', 'add_data', [], true, false, ['type' => 'una-proxy']));
  63. $this->assertSame('', $this->bxCallProtected($oGrid, '_getActionDuplicate', 'single', 'duplicate', [], true, false, ['type' => 'una-proxy']));
  64. $this->assertSame('', $this->bxCallProtected($oGrid, '_getActionEdit', 'single', 'edit', [], true, false, ['type' => 'una-proxy']));
  65. }
  66. }