public function testQueryStudy() { // query on MRN $server_ip = '134.174.12.21'; $server_port = 104; $user_aetitle = 'FNNDSC-CHRISDEV'; $pacs_mrn = new PACS($server_ip, $server_port, $user_aetitle); $pacs_mrn->addParameter('PatientID', 4562009); $result_mrn = $pacs_mrn->queryStudy(); // should return 4 results $this->assertTrue(count($result_mrn['PatientID']) == 4); // query on name $pacs_name = new PACS($server_ip, $server_port, $user_aetitle); $pacs_name->addParameter('PatientName', 'RONDO^RAJON'); $result_name = $pacs_name->queryStudy(); // should return 1 result $this->assertTrue(count($result_name['PatientName']) == 1); // query on MRN and name $pacs_mrn_name = new PACS($server_ip, $server_port, $user_aetitle); $pacs_mrn_name->addParameter('PatientID', 4562009); $pacs_mrn_name->addParameter('PatientName', 'RONDO^RAJON'); $result_mrn_name = $pacs_mrn_name->queryStudy(); // MRN should take over, 4 results should be returned then $this->assertTrue(count($result_mrn_name['PatientID']) == 4); // we add unknown parameters $pacs_fake = new PACS($server_ip, $server_port, $user_aetitle); $pacs_fake->addParameter('PatientID', 4562009); $pacs_fake->addParameter('FakeParameter', 'IAmAFakeParameter'); $result_fake = $pacs_fake->queryStudy(); // should return null $this->assertTrue($result_fake == null); // we add not enough parameter (no user AE Title) $pacs_not_enough = new PACS($server_ip, $server_port); $pacs_not_enough->addParameter('PatientID', 4562009); $result_not_enough = $pacs_not_enough->queryStudy(); // should return null $this->assertTrue($result_not_enough == null); }