Yii components' properties can come from many sources and be
accessed either directly or via get method calls. This class,
given a set of property values, will generate a stub that will
return those values under any circumstances.
public function testGetUnusedReadingMethods() { $test = new OEModule\OphCiExamination\models\Element_OphCiExamination_ColourVision(); $test->left_readings = array(ComponentStubGenerator::generate('OEModule\\OphCiExamination\\models\\OphCiExamination_ColourVision_Reading', array('method' => $this->methods('method1')))); $this->assertEquals(array($this->methods('method2')), $test->getUnusedReadingMethods('left'), 'Left methods should be restricted'); $this->assertEquals(array($this->methods('method1'), $this->methods('method2')), $test->getUnusedReadingMethods('right'), 'Right should return both methods'); }
public function test_validateAttribute_invalid() { $validator = $this->getMockBuilder('OEDatetimeValidator')->disableOriginalConstructor()->setMethods(array('parseDateValue', 'addError'))->getMock(); $validator->expects($this->at(0))->method('parseDateValue')->with('test')->will($this->returnValue(false)); $validator->expects($this->at(1))->method('addError'); $obj = ComponentStubGenerator::generate('CActiveRecord', array('attr' => 'test')); $validator->validateAttribute($obj, 'attr'); }
public function testgetActiveRTT_many() { $referral = $this->getMockBuilder('Referral')->disableOriginalConstructor()->setMethods(null)->getMock(); $referral->rtts = array(ComponentStubGenerator::generate('RTT', array('active' => true)), ComponentStubGenerator::generate('RTT', array('active' => false)), ComponentStubGenerator::generate('RTT', array('active' => true))); $active = $referral->getActiveRTT(); $this->assertCount(2, $active); $this->assertSame(array($referral->rtts[0], $referral->rtts[2]), $active); }
public function testGetReferralChoices_forElement() { $test = $this->getOphTrOperationbookingEventController(); $test->patient = $this->patients('patient1'); $element = ComponentStubGenerator::generate('Element_OphTrOperationbooking_Operation', array('referral_id' => $this->referrals('referral4')->id, 'referral' => $this->referrals('referral4'))); $referrals = $test->getReferralChoices($element); $this->assertEquals(array($this->referrals('referral3'), $this->referrals('referral1'), $this->referrals('referral4')), $referrals); }
public function testCalculateDefaultReferral_ssa() { $test = $this->getDefaultController(array('getReferralChoices')); $firm = ComponentStubGenerator::generate('Firm', array('id' => 3, 'service_subspecialty_assignment_id' => 1)); $test->firm = $firm; $firm2 = ComponentStubGenerator::generate('Firm', array('id' => 9, 'service_subspecialty_assignment_id' => 1)); $test->expects($this->once())->method('getReferralChoices')->will($this->returnValue(array(ComponentStubGenerator::generate('Referral', array('id' => 5, 'service_subspecialty_assignment_id' => 3)), ComponentStubGenerator::generate('Referral', array('id' => 9, 'firm' => $firm2, 'service_subspecialty_assignment_id' => 7)), ComponentStubGenerator::generate('Referral', array('id' => 12, 'service_subspecialty_assignment_id' => 1))))); $res = $test->calculateDefaultReferral(); $this->assertEquals(12, $res->id); }
/** * @dataProvider getNextDisplayOrderProvider * * @param $mappings * @param $expected */ public function test_getNextDisplayOrder($mappings, $expected) { $test = $this->getMockBuilder('WorklistDefinition')->disableOriginalConstructor()->setMethods(null)->getMock(); $test_maps = array(); foreach ($mappings as $id => $display_order) { $test_maps[] = ComponentStubGenerator::generate('WorklistDefinitionMapping', array('id' => $id, 'display_order' => $display_order)); } $test->mappings = $test_maps; $this->assertEquals($expected, $test->getNextDisplayOrder()); }
/** * @dataProvider validateAttribute_value_provider * * @param $valid * @param $addError_count */ public function test_validateAttribute_value($valid, $addError_count) { $validator = $this->getMockBuilder('OETimeValidator')->disableOriginalConstructor()->setMethods(array('validateValue', 'addError'))->getMock(); $validator->allowEmpty = false; $validator->expects($this->once())->method('validateValue')->will($this->returnValue($valid)); $validator->expects($this->exactly($addError_count))->method('addError'); $m = static::getProtectedMethod($validator, 'validateAttribute'); $obj = ComponentStubGenerator::generate('CActiveRecord', array('attr' => 'anything')); $m->invokeArgs($validator, array($obj, 'attr')); }
/** * @dataProvider checkFirmProvider * * @param $context_attrs * @param $firm_attrs * @param $expected */ public function test_checkFirm($context_attrs, $firm_attrs, $expected) { $context = new WorklistDefinitionDisplayContext(); foreach ($context_attrs as $k => $v) { $context->{$k} = $v; } $firm = $this->getMockBuilder('Firm')->disableOriginalConstructor()->setMethods(array('getSubspecialty'))->getMock(); $firm->id = $firm_attrs['id']; $subspecialty = ComponentStubGenerator::generate('Subspecialty', array('id' => $firm_attrs['subspecialty_id'])); $firm->expects($this->any())->method('getSubspecialty')->will($this->returnValue($subspecialty)); $this->assertEquals($expected, $context->checkFirm($firm)); }
/** * @dataProvider getCurrentAttributesByIdProvider * * @param $wp_attrs */ public function test_getCurrentAttributesById($wp_attrs) { $worklist_patient_attrs = array(); $expected = array(); foreach ($wp_attrs as $attr) { $wpa = ComponentStubGenerator::generate('WorklistPatientAttribute', $attr); $expected[$attr['worklist_attribute_id']] = $wpa; $worklist_patient_attrs[] = $wpa; } $worklist_patient = new WorklistPatient(); $worklist_patient->worklist_attributes = $worklist_patient_attrs; $this->assertEquals($expected, $worklist_patient->getCurrentAttributesById()); }
/** * @dataProvider getMappingAttributeIdsByNameProvider * * @param $worklist_attrs */ public function test_getMappingAttributeIdsByName($worklist_attrs) { $worklist_attrs = array(); $expected = array(); foreach ($worklist_attrs as $attr) { $wa = ComponentStubGenerator::generate('WorklistAttribute', $attr); $expected[$attr['name']] = $wa; $worklist_attrs[] = $wa; } $worklist = new Worklist(); $worklist->mapping_attributes = $worklist_attrs; $this->assertEquals($expected, $worklist->getMappingAttributeIdsByName()); }
public function testgetTicketActionLabel() { $no_label = $this->getMockBuilder('OEModule\\PatientTicketing\\models\\Ticket')->disableOriginalConstructor()->setMethods(array('is_complete'))->getMock(); $no_label->expects($this->any())->method('is_complete')->will($this->returnValue(true)); //$svc = $this->manager->getService('PatientTicketing_Ticket'); $svc = Yii::app()->service->getService('PatientTicketing_Ticket'); $this->assertEquals(null, $svc->getTicketActionLabel($no_label)); $label_queue = ComponentStubGenerator::generate('OEModule\\PatientTicketing\\models\\Queue'); $label_ticket = $this->getMockBuilder('OEModule\\PatientTicketing\\models\\Ticket')->disableOriginalConstructor()->setMethods(array('is_complete'))->getMock(); $label_ticket->current_queue = $label_queue; $label_ticket->expects($this->any())->method('is_complete')->will($this->returnValue(false)); // default label when not customised $this->assertEquals('Move', $svc->getTicketActionLabel($label_ticket)); // custom current queue label $label_queue->action_label = 'Test Label'; $this->assertEquals('Test Label', $svc->getTicketActionLabel($label_ticket)); }
public function resolveModelId($pass) { $rc = new ReflectionClass("\\OEModule\\PASAPI\\resources\\PatientId"); $m = $rc->getMethod("resolveModelId"); $m->setAccessible(true); $resource = $this->getMockBuilder("\\OEModule\\PASAPI\\resources\\PatientId")->disableOriginalConstructor()->setMethods(array("getModelForClass", "patientNotFound"))->getMock(); $resource->Id = "testId"; $patient = $this->getMockBuilder('Patient')->disableOriginalConstructor()->setMethods(array('findByPk'))->getMock(); $resource->expects($this->once())->method("getModelForClass")->with("Patient")->will($this->returnValue($patient)); if ($pass) { $resource->expects($this->never())->method("patientNotFound"); $result = ComponentStubGenerator::generate("Patient", array('id' => 'testId')); $patient->expects($this->once())->method('findByPk')->will($this->returnValue($result)); $this->assertEquals($result, $m->invoke($resource)); } else { $resource->expects($this->once())->method("patientNotFound"); $patient->expects($this->once())->method('findByPk')->will($this->returnValue(null)); $m->invoke($resource); } }
public function test_saveModel_update() { $pa = $this->getMockResource('PatientAppointment', array('resolvePatient', 'resolveWhen', 'resolveAttributes')); $manager = $this->getMockBuilder('WorklistManager')->disableOriginalConstructor()->setMethods(array('updateWorklistPatientFromMapping'))->getMock(); $rc = new ReflectionClass($pa); $p = $rc->getProperty('worklist_manager'); $p->setAccessible(true); $p->setValue($pa, $manager); $patient = ComponentStubGenerator::generate('Patient', array('id' => 12)); $when = new DateTime('2012-08-04'); $attributes = array('foo' => 'bar'); $pa->expects($this->once())->method('resolvePatient')->will($this->returnValue($patient)); $pa->expects($this->once())->method('resolveWhen')->will($this->returnValue($when)); $pa->expects($this->once())->method('resolveAttributes')->will($this->returnValue($attributes)); $model = ComponentStubGenerator::generate('WorklistPatient', array('isNewRecord' => false, 'patient_id' => 4)); $manager->expects($this->once())->method('updateWorklistPatientFromMapping')->with($model, $when, $attributes)->will($this->returnValue(true)); $pa->saveModel($model); // verify that the patient has been updated $this->assertEquals($patient->id, $model->patient_id); }
/** * @dataProvider shouldDisplayWorklistForContextProvider * * @param $context_list * @param $expected */ public function test_shouldDisplayWorklistForContext($context_list, $expected) { $manager = new WorklistManager(); $contexts = array(); $site = ComponentStubGenerator::generate('Site'); $firm = ComponentStubGenerator::generate('Firm'); foreach ($context_list as $ctx) { $c = $this->getMockBuilder('WorklistDefinitionDisplayContext')->disableOriginalConstructor()->setMethods(array('checkSite', 'checkFirm'))->getMock(); $c->expects($this->any())->method('checkSite')->with($site)->will($this->returnValue($ctx['checkSite'])); $c->expects($this->any())->method('checkFirm')->with($firm)->will($this->returnValue($ctx['checkFirm'])); $contexts[] = $c; } $definition = ComponentStubGenerator::generate('WorklistDefinition', array('display_contexts' => $contexts)); $worklist = ComponentStubGenerator::generate('Worklist', array('worklist_definition' => $definition)); $this->assertEquals($expected, $manager->shouldDisplayWorklistForContext($worklist, $site, $firm)); }
public function testEditOphInfo_ValidationFailure() { $cvi_status = ComponentStubGenerator::generate('PatientOphInfoCviStatus', array('id' => 1)); $errors = $this->patients('patient1')->editOphInfo($cvi_status, '2000-42-35'); $this->assertEquals(array('cvi_status_date' => array('This is not a valid date')), $errors); }
public function testinitActionCreate() { $controller = $this->getMockBuilder('BaseEventTypeController')->disableOriginalConstructor()->setMethods(array('setPatient', 'getEpisode', 'getEvent_Type'))->getMock(); $event_type = ComponentStubGenerator::generate('EventType', array('id' => 12)); $_REQUEST['patient_id'] = 126; $episode = ComponentStubGenerator::generate('Episode', array('id' => 453)); $controller->expects($this->once())->method('setPatient')->with($this->equalTo($_REQUEST['patient_id'])); $controller->expects($this->once())->method('getEvent_Type')->will($this->returnValue($event_type)); $controller->expects($this->once())->method('getEpisode')->will($this->returnValue($episode)); $r = new ReflectionClass('BaseEventTypeController'); $iac_meth = $r->getMethod('initActionCreate'); $iac_meth->setAccessible(true); $iac_meth->invoke($controller); $this->assertTrue($controller->event->isNewRecord); $this->assertSame($episode->id, $controller->event->episode_id); $this->assertEquals($event_type->id, $controller->event->event_type_id); }
public function setUp() { $this->stub = ComponentStubGenerator::generate('ComponentStubGeneratorTest_ExampleComponent', array('normal_prop' => 'bar', 'magic_get_prop' => 'bar', 'get_method_prop' => 'bar')); }
private function getUser($id = 1) { return ComponentStubGenerator::generate('User', array('id' => $id)); }
public function testgetElements() { $et = $this->getMockBuilder('EventType')->disableOriginalConstructor()->setMethods(array('getAllElementTypes'))->getMock(); $event = ComponentStubGenerator::generate('Event', array('eventType' => $et)); $et->expects($this->once())->method('getAllElementTypes')->will($this->returnValue(array())); $this->assertEquals(null, $event->getElements()); $this->markTestIncomplete('At the moment this does not test that we are actually querying the element types for the event type of the event.'); }
/** * @covers Audit::getColour */ public function testGetColour() { //test the error's color $audit = new Audit(); $audit->action = ComponentStubGenerator::generate('AuditAction', array('name' => 'search-error')); $result = $audit->getColour(); $expected = 'Red'; $this->assertEquals($expected, $result); }
public function test_validateAttributeInvalidValues() { $obj = ComponentStubGenerator::generate('CActiveRecord', array('compareAttr' => 'misc', 'attr' => 'misc')); $validator = $this->getMockBuilder('OEDateCompareValidator')->disableOriginalConstructor()->setMethods(array('addError'))->getMock(); $validator->message = 'test message'; $validator->expects($this->at(0))->method('addError'); $m = static::getProtectedMethod($validator, 'validateAttribute'); $m->invokeArgs($validator, array($obj, 'attr')); }
public function setUp() { $this->helper = new OphTrOperationbooking_BookingHelper(); $this->session = ComponentStubGenerator::generate('OphTrOperationbooking_Operation_Session', array('anaesthetist' => 1, 'consultant' => 1, 'paediatric' => 1, 'general_anaesthetic' => 1)); $this->op = ComponentStubGenerator::generate('Element_OphTrOperationbooking_Operation', array('anaesthetist_required' => 1, 'consultant_required' => 1, 'event' => ComponentStubGenerator::generate('Event', array('episode' => ComponentStubGenerator::generate('Episode', array('patient' => ComponentStubGenerator::generate('Patient'))))), 'anaesthetic_type' => ComponentStubGenerator::generate('AnaestheticType', array('name' => 'GA')))); }
public function testEmptyStringIsNotAValue() { $this->val->field = 'f1'; $this->val->value = 2; $object = ComponentStubGenerator::generate('CActiveRecord', array('f1' => 2, 'f2' => '')); $object->expects($this->any())->method('getAttributeLabel')->with('f2')->will($this->returnValue('field 2')); $object->expects($this->once())->method('addError')->with('f2', 'field 2 cannot be blank'); $this->val->validateAttribute($object, 'f2'); $object->__phpunit_verify(); }
public function setUp() { $this->chart = new FlotChart(ComponentStubGenerator::generate('CController')); }
public function find($condition = '', $params = array()) { return ComponentStubGenerator::generate(get_class(self), $params); }
public function testExtractValues() { $objects = array(array('disorder' => array('term' => 'term1')), array('disorder' => array('term' => 'term2')), array('disorder' => array()), array(), ComponentStubGenerator::generate('SecondaryDiagnosis', array('disorder' => ComponentStubGenerator::generate('Disorder', array('term' => 'term3')))), ComponentStubGenerator::generate('SecondaryDiagnosis', array('disorder' => ComponentStubGenerator::generate('Disorder', array('term' => 'term4')))), ComponentStubGenerator::generate('SecondaryDiagnosis', array('disorder' => ComponentStubGenerator::generate('Disorder', array('term' => null)))), ComponentStubGenerator::generate('SecondaryDiagnosis', array())); $expected = array('term1', 'term2', 'termDefault', 'termDefault', 'term3', 'term4', 'termDefault', 'termDefault'); $this->assertEquals($expected, Helper::extractValues($objects, 'disorder.term', 'termDefault')); }
public function setUp() { parent::setUp(); $this->model = new _WrapperContactBehavior(); $this->address = new Address(); $this->address->attributes = array('address1' => 'Line 1', 'address2' => 'Line 2', 'city' => 'City', 'postcode' => 'Postcode', 'county' => 'County', 'country_id' => 1); $label = new ContactLabel(); $label->name = 'Test Label'; $contact = ComponentStubGenerator::generate('Contact', array('address' => $this->address, 'label' => $label, 'fullName' => 'Henry Krinkle', 'reversedFullName' => 'Krinkle Henry')); $this->model->contact = $contact; $this->model2 = new _WrapperContactBehavior2(); $this->model2->contact = $contact; $contact3 = ComponentStubGenerator::generate('Contact', array('address' => $this->address, 'label' => $label, 'fullName' => 'Henry Krinkle', 'nick_name' => 'Jimbob')); $this->model3 = new _WrapperContactBehavior3(); $this->model3->contact = $contact3; }
public function getCalculateERODTestCases() { return array(array(array('consultant_required' => false, 'anaesthetist_required' => false, 'anaesthetic_type' => ComponentStubGenerator::generate('AnaestheticType', array('code' => 'X')), 'decision_date' => date('Y-m-d', strtotime('+5 days'))), $this->getMalePatient(), 'firm1', 'session4', 'Check decision date affects which session is picked'), array(array('consultant_required' => false, 'anaesthetist_required' => false, 'anaesthetic_type' => ComponentStubGenerator::generate('AnaestheticType', array('code' => 'X')), 'decision_date' => date('Y-m-d', strtotime('-3 weeks'))), $this->getMalePatient(), 'firm1', 'session2', 'Short notice restriction on EROD'), array(array('consultant_required' => false, 'anaesthetist_required' => false, 'anaesthetic_type' => ComponentStubGenerator::generate('AnaestheticType', array('code' => 'X')), 'decision_date' => date('Y-m-d', strtotime('-3 weeks'))), $this->getMalePatient(), 'firm2', 'session10', 'Short notice different firm'), array(array('consultant_required' => true, 'anaesthetist_required' => false, 'anaesthetic_type' => ComponentStubGenerator::generate('AnaestheticType', array('code' => 'X')), 'decision_date' => date('Y-m-d', strtotime('-1 day'))), $this->getMalePatient(), 'firm1', 'session5', 'Consultant impacting which session is picked'), array(array('consultant_required' => false, 'anaesthetist_required' => true, 'anaesthetic_type' => ComponentStubGenerator::generate('AnaestheticType', array('code' => 'X')), 'decision_date' => date('Y-m-d', strtotime('-1 day'))), $this->getMalePatient(), 'firm1', 'session7', 'Anaethetist impacting which session is picked'), array(array('consultant_required' => false, 'anaesthetist_required' => false, 'anaesthetic_type' => ComponentStubGenerator::generate('AnaestheticType', array('code' => 'GA')), 'decision_date' => date('Y-m-d', strtotime('-1 day'))), $this->getMalePatient(), 'firm1', 'session7', 'GA anaesthetic impacting which session is picked')); }