MDL-81281 phpunit: assertObjectHasAttribute is deprecated

To be integrated as part of MDL-81266

When running PHPUnit 9.6 we get the following deprecation warnings:
"assertObjectHasAttribute() is deprecated and will be removed in PHPUnit
10. Refactor your test to use assertObjectHasProperty() instead."

So we replace all instances of assertObjectHasAttribute with
assertObjectHasProperty.

PHPUnit justifies the change with:
> PHPUnit currently refers to "fields" (see above) as "attributes". This
> is (or will become) confusing considering the introduction of
> attributes in PHP 8 and their support in PHPUnit.  PHPUnit will be
> changed to use the term "property" instead of "attribute" where "field"
> is meant.

Signed-off-by: Daniel Ziegenberg <daniel@ziegenberg.at>
This commit is contained in:
Daniel Ziegenberg 2024-03-19 11:11:59 +01:00 committed by Eloy Lafuente (stronk7)
parent 87267da39d
commit 08027e408c
No known key found for this signature in database
GPG Key ID: 53487A05E6228820
40 changed files with 226 additions and 226 deletions

View File

@ -37,7 +37,7 @@ class api_test extends \advanced_testcase {
// Prepare the form data for adding a new policy document.
$formdata = api::form_policydoc_data(new policy_version(0));
$this->assertObjectHasAttribute('name', $formdata);
$this->assertObjectHasProperty('name', $formdata);
$this->assertArrayHasKey('text', $formdata->summary_editor);
$this->assertArrayHasKey('format', $formdata->content_editor);

View File

@ -143,7 +143,7 @@ class cli_test extends \advanced_testcase {
// Created users have data in the profile fields.
$user1 = \core_user::get_user_by_username('reznort');
$profilefields1 = profile_user_record($user1->id);
$this->assertObjectHasAttribute('superfield', $profilefields1);
$this->assertObjectHasProperty('superfield', $profilefields1);
$this->assertEquals('Loves cats', $profilefields1->superfield);
}

View File

@ -330,8 +330,8 @@ class badgeslib_test extends advanced_testcase {
$message = array_pop($messages);
// Check we have the expected data.
$customdata = json_decode($message->customdata);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasAttribute('hash', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
$this->assertObjectHasProperty('hash', $customdata);
$user2 = $this->getDataGenerator()->create_user();
$badge->issue($user2->id, true);

View File

@ -711,7 +711,7 @@ class lib_test extends \advanced_testcase {
// Test cohort_get_cohort.
$result = cohort_get_cohort($cohort1->id, $coursectx, true);
$this->assertObjectHasAttribute('customfields', $result);
$this->assertObjectHasProperty('customfields', $result);
$this->assertCount(1, $result->customfields);
$field = reset($result->customfields);
$this->assertInstanceOf(data_controller::class, $field);
@ -727,7 +727,7 @@ class lib_test extends \advanced_testcase {
$this->assertEquals(2, $result['totalcohorts']);
$this->assertEquals(2, $result['allcohorts']);
foreach ($result['cohorts'] as $cohort) {
$this->assertObjectHasAttribute('customfields', $cohort);
$this->assertObjectHasProperty('customfields', $cohort);
$this->assertCount(1, $cohort->customfields);
$field = reset($cohort->customfields);
$this->assertInstanceOf(data_controller::class, $field);
@ -753,7 +753,7 @@ class lib_test extends \advanced_testcase {
$this->assertEquals(2, $result['totalcohorts']);
$this->assertEquals(2, $result['allcohorts']);
foreach ($result['cohorts'] as $cohort) {
$this->assertObjectHasAttribute('customfields', $cohort);
$this->assertObjectHasProperty('customfields', $cohort);
$this->assertCount(1, $cohort->customfields);
$field = reset($cohort->customfields);
$this->assertInstanceOf(data_controller::class, $field);
@ -778,7 +778,7 @@ class lib_test extends \advanced_testcase {
$result = cohort_get_available_cohorts($coursectx, COHORT_ALL, 0, 25, '', true);
$this->assertCount(2, $result);
foreach ($result as $cohort) {
$this->assertObjectHasAttribute('customfields', $cohort);
$this->assertObjectHasProperty('customfields', $cohort);
$this->assertCount(1, $cohort->customfields);
$field = reset($cohort->customfields);
$this->assertInstanceOf(data_controller::class, $field);
@ -805,7 +805,7 @@ class lib_test extends \advanced_testcase {
$result = cohort_get_user_cohorts($user->id, true);
$this->assertCount(2, $result);
foreach ($result as $cohort) {
$this->assertObjectHasAttribute('customfields', $cohort);
$this->assertObjectHasProperty('customfields', $cohort);
$this->assertCount(1, $cohort->customfields);
$field = reset($cohort->customfields);
$this->assertInstanceOf(data_controller::class, $field);

View File

@ -229,6 +229,6 @@ class matrix_user_manager_test extends \advanced_testcase {
$this->assertNotFalse($matrixprofilefield);
$user = $this->getDataGenerator()->create_user();
$this->assertObjectHasAttribute($matrixprofilefield, profile_user_record($user->id));
$this->assertObjectHasProperty($matrixprofilefield, profile_user_record($user->id));
}
}

View File

@ -99,7 +99,7 @@ class lib_test extends \advanced_testcase {
$this->assertEquals($expectedurlname, $message->contexturlname);
// Test customdata.
$customdata = json_decode($message->customdata);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
$this->assertStringContainsString('tokenpluginfile.php', $customdata->notificationiconurl);
$userpicture = new \user_picture($u1);
$userpicture->size = 1; // Use f1 size.
@ -229,7 +229,7 @@ class lib_test extends \advanced_testcase {
$this->assertEquals($u1->id, $message->useridto);
// Test customdata.
$customdata = json_decode($message->customdata);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
// Post a comment in a plan with reviewer. The reviewer is messaged.
$p1->set('reviewerid', $u2->id);

View File

@ -54,23 +54,23 @@ class exporters_content_item_test extends \advanced_testcase {
$renderer = $PAGE->get_renderer('core');
$exporteditem = $ciexporter->export($renderer);
$this->assertObjectHasAttribute('id', $exporteditem);
$this->assertObjectHasProperty('id', $exporteditem);
$this->assertEquals($exporteditem->id, $contentitem->get_id());
$this->assertObjectHasAttribute('name', $exporteditem);
$this->assertObjectHasProperty('name', $exporteditem);
$this->assertEquals($exporteditem->name, $contentitem->get_name());
$this->assertObjectHasAttribute('title', $exporteditem);
$this->assertObjectHasProperty('title', $exporteditem);
$this->assertEquals($exporteditem->title, $contentitem->get_title()->get_value());
$this->assertObjectHasAttribute('link', $exporteditem);
$this->assertObjectHasProperty('link', $exporteditem);
$this->assertEquals($exporteditem->link, $contentitem->get_link()->out(false));
$this->assertObjectHasAttribute('icon', $exporteditem);
$this->assertObjectHasProperty('icon', $exporteditem);
$this->assertEquals($exporteditem->icon, $contentitem->get_icon());
$this->assertObjectHasAttribute('help', $exporteditem);
$this->assertObjectHasProperty('help', $exporteditem);
$this->assertEquals($exporteditem->help, format_text($contentitem->get_help(), FORMAT_MARKDOWN));
$this->assertObjectHasAttribute('archetype', $exporteditem);
$this->assertObjectHasProperty('archetype', $exporteditem);
$this->assertEquals($exporteditem->archetype, $contentitem->get_archetype());
$this->assertObjectHasAttribute('componentname', $exporteditem);
$this->assertObjectHasProperty('componentname', $exporteditem);
$this->assertEquals($exporteditem->componentname, $contentitem->get_component_name());
$this->assertObjectHasAttribute('legacyitem', $exporteditem);
$this->assertObjectHasProperty('legacyitem', $exporteditem);
$this->assertFalse($exporteditem->legacyitem);
$this->assertEquals($exporteditem->purpose, $contentitem->get_purpose());
$this->assertEquals($exporteditem->branded, $contentitem->is_branded());
@ -102,24 +102,24 @@ class exporters_content_item_test extends \advanced_testcase {
$renderer = $PAGE->get_renderer('core');
$exporteditem = $ciexporter->export($renderer);
$this->assertObjectHasAttribute('id', $exporteditem);
$this->assertObjectHasProperty('id', $exporteditem);
$this->assertEquals($exporteditem->id, $contentitem->get_id());
$this->assertObjectHasAttribute('name', $exporteditem);
$this->assertObjectHasProperty('name', $exporteditem);
$this->assertEquals($exporteditem->name, $contentitem->get_name());
$this->assertObjectHasAttribute('title', $exporteditem);
$this->assertObjectHasProperty('title', $exporteditem);
$this->assertEquals($exporteditem->title, $contentitem->get_title()->get_value());
$this->assertObjectHasAttribute('link', $exporteditem);
$this->assertObjectHasProperty('link', $exporteditem);
$this->assertEquals($exporteditem->link, $contentitem->get_link()->out(false));
$this->assertObjectHasAttribute('icon', $exporteditem);
$this->assertObjectHasProperty('icon', $exporteditem);
$this->assertEquals($exporteditem->icon, $contentitem->get_icon());
$this->assertObjectHasAttribute('help', $exporteditem);
$this->assertObjectHasProperty('help', $exporteditem);
$this->assertEquals($exporteditem->help, format_text($contentitem->get_help(), FORMAT_MARKDOWN));
$this->assertObjectHasAttribute('archetype', $exporteditem);
$this->assertObjectHasProperty('archetype', $exporteditem);
$this->assertEquals($exporteditem->archetype, $contentitem->get_archetype());
$this->assertObjectHasAttribute('componentname', $exporteditem);
$this->assertObjectHasProperty('componentname', $exporteditem);
$this->assertEquals($exporteditem->componentname, $contentitem->get_component_name());
// Most important, is this a legacy item?
$this->assertObjectHasAttribute('legacyitem', $exporteditem);
$this->assertObjectHasProperty('legacyitem', $exporteditem);
$this->assertTrue($exporteditem->legacyitem);
}
}

View File

@ -53,16 +53,16 @@ class exporters_content_items_test extends \advanced_testcase {
$renderer = $PAGE->get_renderer('core');
$exportedcontentitems = $ciexporter->export($renderer);
$this->assertObjectHasAttribute('content_items', $exportedcontentitems);
$this->assertObjectHasProperty('content_items', $exportedcontentitems);
foreach ($exportedcontentitems->content_items as $key => $dto) {
$this->assertObjectHasAttribute('id', $dto);
$this->assertObjectHasAttribute('name', $dto);
$this->assertObjectHasAttribute('title', $dto);
$this->assertObjectHasAttribute('link', $dto);
$this->assertObjectHasAttribute('icon', $dto);
$this->assertObjectHasAttribute('help', $dto);
$this->assertObjectHasAttribute('archetype', $dto);
$this->assertObjectHasAttribute('componentname', $dto);
$this->assertObjectHasProperty('id', $dto);
$this->assertObjectHasProperty('name', $dto);
$this->assertObjectHasProperty('title', $dto);
$this->assertObjectHasProperty('link', $dto);
$this->assertObjectHasProperty('icon', $dto);
$this->assertObjectHasProperty('help', $dto);
$this->assertObjectHasProperty('archetype', $dto);
$this->assertObjectHasProperty('componentname', $dto);
}
}
}

View File

@ -193,10 +193,10 @@ class provider_test extends \core_privacy\tests\provider_testcase {
$writer = \core_privacy\local\request\writer::with_context($context1);
$this->assertTrue($writer->has_any_data());
$writerdata = $writer->get_data();
$this->assertObjectHasAttribute('fullname', $writerdata);
$this->assertObjectHasAttribute('shortname', $writerdata);
$this->assertObjectHasAttribute('idnumber', $writerdata);
$this->assertObjectHasAttribute('summary', $writerdata);
$this->assertObjectHasProperty('fullname', $writerdata);
$this->assertObjectHasProperty('shortname', $writerdata);
$this->assertObjectHasProperty('idnumber', $writerdata);
$this->assertObjectHasProperty('summary', $writerdata);
}
/**
@ -226,10 +226,10 @@ class provider_test extends \core_privacy\tests\provider_testcase {
$writer = \core_privacy\local\request\writer::with_context($context1);
$this->assertTrue($writer->has_any_data());
$writerdata = $writer->get_data();
$this->assertObjectHasAttribute('fullname', $writerdata);
$this->assertObjectHasAttribute('shortname', $writerdata);
$this->assertObjectHasAttribute('idnumber', $writerdata);
$this->assertObjectHasAttribute('summary', $writerdata);
$this->assertObjectHasProperty('fullname', $writerdata);
$this->assertObjectHasProperty('shortname', $writerdata);
$this->assertObjectHasProperty('idnumber', $writerdata);
$this->assertObjectHasProperty('summary', $writerdata);
}
/**

View File

@ -51,14 +51,14 @@ class services_content_item_service_test extends \advanced_testcase {
$contentitems = $cis->get_content_items_for_user_in_course($user, $course);
foreach ($contentitems as $key => $contentitem) {
$this->assertObjectHasAttribute('id', $contentitem);
$this->assertObjectHasAttribute('name', $contentitem);
$this->assertObjectHasAttribute('title', $contentitem);
$this->assertObjectHasAttribute('link', $contentitem);
$this->assertObjectHasAttribute('icon', $contentitem);
$this->assertObjectHasAttribute('help', $contentitem);
$this->assertObjectHasAttribute('archetype', $contentitem);
$this->assertObjectHasAttribute('componentname', $contentitem);
$this->assertObjectHasProperty('id', $contentitem);
$this->assertObjectHasProperty('name', $contentitem);
$this->assertObjectHasProperty('title', $contentitem);
$this->assertObjectHasProperty('link', $contentitem);
$this->assertObjectHasProperty('icon', $contentitem);
$this->assertObjectHasProperty('help', $contentitem);
$this->assertObjectHasProperty('archetype', $contentitem);
$this->assertObjectHasProperty('componentname', $contentitem);
}
}

View File

@ -120,8 +120,8 @@ class content_notification_task_test extends \advanced_testcase {
$messagecustomdata = json_decode($message->customdata);
$this->assertEquals($course->id, $messagecustomdata->courseid);
$this->assertObjectHasAttribute('notificationiconurl', $messagecustomdata);
$this->assertObjectHasAttribute('notificationpictureurl', $messagecustomdata);
$this->assertObjectHasProperty('notificationiconurl', $messagecustomdata);
$this->assertObjectHasProperty('notificationpictureurl', $messagecustomdata);
}
// Now, set the course to not visible.

View File

@ -952,26 +952,26 @@ class enrollib_test extends advanced_testcase {
$this->assertEquals([$course1->id, $course2->id, $course3->id], array_keys($courses));
// Check fields parameter still works. Fields default (certain base fields).
$this->assertObjectHasAttribute('id', $courses[$course3->id]);
$this->assertObjectHasAttribute('shortname', $courses[$course3->id]);
$this->assertObjectHasProperty('id', $courses[$course3->id]);
$this->assertObjectHasProperty('shortname', $courses[$course3->id]);
$this->assertObjectNotHasProperty('summary', $courses[$course3->id]);
// Specified fields (one, string).
$courses = enrol_get_my_courses('summary', 'id', 0, [], true);
$this->assertObjectHasAttribute('id', $courses[$course3->id]);
$this->assertObjectHasAttribute('shortname', $courses[$course3->id]);
$this->assertObjectHasAttribute('summary', $courses[$course3->id]);
$this->assertObjectHasProperty('id', $courses[$course3->id]);
$this->assertObjectHasProperty('shortname', $courses[$course3->id]);
$this->assertObjectHasProperty('summary', $courses[$course3->id]);
$this->assertObjectNotHasProperty('summaryformat', $courses[$course3->id]);
// Specified fields (two, string).
$courses = enrol_get_my_courses('summary, summaryformat', 'id', 0, [], true);
$this->assertObjectHasAttribute('summary', $courses[$course3->id]);
$this->assertObjectHasAttribute('summaryformat', $courses[$course3->id]);
$this->assertObjectHasProperty('summary', $courses[$course3->id]);
$this->assertObjectHasProperty('summaryformat', $courses[$course3->id]);
// Specified fields (two, array).
$courses = enrol_get_my_courses(['summary', 'summaryformat'], 'id', 0, [], true);
$this->assertObjectHasAttribute('summary', $courses[$course3->id]);
$this->assertObjectHasAttribute('summaryformat', $courses[$course3->id]);
$this->assertObjectHasProperty('summary', $courses[$course3->id]);
$this->assertObjectHasProperty('summaryformat', $courses[$course3->id]);
// By default, courses are ordered by sortorder - which by default is most recent first.
$courses = enrol_get_my_courses(null, null, 0, [], true);

View File

@ -67,13 +67,13 @@ class repository_test extends \advanced_testcase {
// Verify we get the record back.
$this->assertInstanceOf(favourite::class, $favourite);
$this->assertObjectHasAttribute('id', $favourite);
$this->assertObjectHasProperty('id', $favourite);
$this->assertEquals('core_course', $favourite->component);
$this->assertEquals('course', $favourite->itemtype);
// Verify the returned object has additional properties, created as part of the add.
$this->assertObjectHasAttribute('ordering', $favourite);
$this->assertObjectHasAttribute('timecreated', $favourite);
$this->assertObjectHasProperty('ordering', $favourite);
$this->assertObjectHasProperty('timecreated', $favourite);
$this->assertGreaterThanOrEqual($timenow, $favourite->timecreated);
// Try to save the same record again and confirm the store throws an exception.
@ -137,8 +137,8 @@ class repository_test extends \advanced_testcase {
$this->assertEquals('course', $favourite->itemtype);
// Verify the returned object has additional properties, created as part of the add.
$this->assertObjectHasAttribute('ordering', $favourite);
$this->assertObjectHasAttribute('timecreated', $favourite);
$this->assertObjectHasProperty('ordering', $favourite);
$this->assertObjectHasProperty('timecreated', $favourite);
$this->assertGreaterThanOrEqual($timenow, $favourite->timecreated);
}
@ -167,7 +167,7 @@ class repository_test extends \advanced_testcase {
// Now, from the repo, get the single favourite we just created, by id.
$userfavourite = $favouritesrepo->find($favourite->id);
$this->assertInstanceOf(favourite::class, $userfavourite);
$this->assertObjectHasAttribute('timecreated', $userfavourite);
$this->assertObjectHasProperty('timecreated', $userfavourite);
// Try to get a favourite we know doesn't exist.
// We expect an exception in this case.
@ -209,8 +209,8 @@ class repository_test extends \advanced_testcase {
$this->assertCount(4, $favourites);
foreach ($favourites as $fav) {
$this->assertInstanceOf(favourite::class, $fav);
$this->assertObjectHasAttribute('id', $fav);
$this->assertObjectHasAttribute('timecreated', $fav);
$this->assertObjectHasProperty('id', $fav);
$this->assertObjectHasProperty('timecreated', $fav);
}
}

View File

@ -200,7 +200,7 @@ class user_favourite_service_test extends \advanced_testcase {
// Favourite a course.
$favourite1 = $user1service->create_favourite('core_course', 'course', $course1context->instanceid, $course1context);
$this->assertObjectHasAttribute('id', $favourite1);
$this->assertObjectHasProperty('id', $favourite1);
// Try to favourite the same course again.
$this->expectException('moodle_exception');

View File

@ -281,8 +281,8 @@ class filetypes_util_test extends advanced_testcase {
$data = $util->data_for_browser();
$this->assertContainsOnly('object', $data);
foreach ($data as $group) {
$this->assertObjectHasAttribute('key', $group);
$this->assertObjectHasAttribute('types', $group);
$this->assertObjectHasProperty('key', $group);
$this->assertObjectHasProperty('types', $group);
if ($group->key !== '') {
$this->assertTrue($group->selectable);
}

View File

@ -1685,23 +1685,23 @@ class accesslib_test extends advanced_testcase {
$this->assertDebuggingCalled('get_role_users() adding u.lastname, u.firstname to the query result because they were required by $sort but missing in $fields');
$this->assertCount(2, $users);
$this->assertArrayHasKey($user1->id, $users);
$this->assertObjectHasAttribute('lastname', $users[$user1->id]);
$this->assertObjectHasAttribute('firstname', $users[$user1->id]);
$this->assertObjectHasProperty('lastname', $users[$user1->id]);
$this->assertObjectHasProperty('firstname', $users[$user1->id]);
$this->assertArrayHasKey($user3->id, $users);
$this->assertObjectHasAttribute('lastname', $users[$user3->id]);
$this->assertObjectHasAttribute('firstname', $users[$user3->id]);
$this->assertObjectHasProperty('lastname', $users[$user3->id]);
$this->assertObjectHasProperty('firstname', $users[$user3->id]);
$users = get_role_users($teacherrole->id, $coursecontext, false, 'u.id AS id_alias');
$this->assertDebuggingCalled('get_role_users() adding u.lastname, u.firstname to the query result because they were required by $sort but missing in $fields');
$this->assertCount(2, $users);
$this->assertArrayHasKey($user1->id, $users);
$this->assertObjectHasAttribute('id_alias', $users[$user1->id]);
$this->assertObjectHasAttribute('lastname', $users[$user1->id]);
$this->assertObjectHasAttribute('firstname', $users[$user1->id]);
$this->assertObjectHasProperty('id_alias', $users[$user1->id]);
$this->assertObjectHasProperty('lastname', $users[$user1->id]);
$this->assertObjectHasProperty('firstname', $users[$user1->id]);
$this->assertArrayHasKey($user3->id, $users);
$this->assertObjectHasAttribute('id_alias', $users[$user3->id]);
$this->assertObjectHasAttribute('lastname', $users[$user3->id]);
$this->assertObjectHasAttribute('firstname', $users[$user3->id]);
$this->assertObjectHasProperty('id_alias', $users[$user3->id]);
$this->assertObjectHasProperty('lastname', $users[$user3->id]);
$this->assertObjectHasProperty('firstname', $users[$user3->id]);
$users = get_role_users($teacherrole->id, $coursecontext, false, 'u.id, u.email, u.idnumber', 'u.idnumber', null, $group->id);
$this->assertCount(1, $users);

View File

@ -573,8 +573,8 @@ class datalib_test extends \advanced_testcase {
$this->assertSame($folder1a->id, $cm->instance);
$this->assertSame($folder1a->course, $cm->course);
$this->assertObjectNotHasProperty('sectionnum', $cm);
$this->assertObjectHasAttribute('revision', $cm);
$this->assertObjectHasAttribute('display', $cm);
$this->assertObjectHasProperty('revision', $cm);
$this->assertObjectHasProperty('display', $cm);
$modules = get_coursemodules_in_course('label', $course1->id);
$this->assertCount(0, $modules);
@ -842,7 +842,7 @@ class datalib_test extends \advanced_testcase {
$this->assertEquals('user_a@example.com', $results[$userids[0]]->email);
$this->assertEquals(1, $results[$userids[0]]->confirmed);
$this->assertEquals('a_first', $results[$userids[0]]->firstname);
$this->assertObjectHasAttribute('firstnamephonetic', $results[$userids[0]]);
$this->assertObjectHasProperty('firstnamephonetic', $results[$userids[0]]);
// Should not have the custom field or department because no context specified.
$this->assertObjectNotHasProperty('department', $results[$userids[0]]);

View File

@ -218,31 +218,31 @@ class filetypes_test extends \advanced_testcase {
// Add a custom filetype, then delete it.
core_filetypes::add_type('frog', 'application/x-frog', 'document');
$this->assertObjectHasAttribute('customfiletypes', $CFG);
$this->assertObjectHasProperty('customfiletypes', $CFG);
core_filetypes::delete_type('frog');
$this->assertObjectNotHasProperty('customfiletypes', $CFG);
// Change a standard filetype, then change it back.
core_filetypes::update_type('asm', 'asm', 'text/plain', 'document');
$this->assertObjectHasAttribute('customfiletypes', $CFG);
$this->assertObjectHasProperty('customfiletypes', $CFG);
core_filetypes::update_type('asm', 'asm', 'text/plain', 'sourcecode');
$this->assertObjectNotHasProperty('customfiletypes', $CFG);
// Delete a standard filetype, then add it back (the same).
core_filetypes::delete_type('asm');
$this->assertObjectHasAttribute('customfiletypes', $CFG);
$this->assertObjectHasProperty('customfiletypes', $CFG);
core_filetypes::add_type('asm', 'text/plain', 'sourcecode');
$this->assertObjectNotHasProperty('customfiletypes', $CFG);
// Revert a changed type.
core_filetypes::update_type('asm', 'asm', 'text/plain', 'document');
$this->assertObjectHasAttribute('customfiletypes', $CFG);
$this->assertObjectHasProperty('customfiletypes', $CFG);
core_filetypes::revert_type_to_default('asm');
$this->assertObjectNotHasProperty('customfiletypes', $CFG);
// Revert a deleted type.
core_filetypes::delete_type('asm');
$this->assertObjectHasAttribute('customfiletypes', $CFG);
$this->assertObjectHasProperty('customfiletypes', $CFG);
core_filetypes::revert_type_to_default('asm');
$this->assertObjectNotHasProperty('customfiletypes', $CFG);
}

View File

@ -656,9 +656,9 @@ class grouplib_test extends \advanced_testcase {
// Get the data.
$data = groups_get_course_data($course->id);
$this->assertInstanceOf('stdClass', $data);
$this->assertObjectHasAttribute('groups', $data);
$this->assertObjectHasAttribute('groupings', $data);
$this->assertObjectHasAttribute('mappings', $data);
$this->assertObjectHasProperty('groups', $data);
$this->assertObjectHasProperty('groupings', $data);
$this->assertObjectHasProperty('mappings', $data);
// Test we have the expected items returns.
$this->assertCount(4, $data->groups);

View File

@ -50,7 +50,7 @@ class timing_wrapper_lock_factory_test extends \advanced_testcase {
$duration = microtime(true) - $before;
// Confirm that perf info is now logged and appears plausible.
$this->assertObjectHasAttribute('locks', $PERF);
$this->assertObjectHasProperty('locks', $PERF);
$this->assertEquals('phpunit', $PERF->locks[0]->type);
$this->assertEquals('frog', $PERF->locks[0]->resource);
$this->assertTrue($PERF->locks[0]->wait <= $duration);

View File

@ -99,15 +99,15 @@ class session_manager_test extends \advanced_testcase {
$this->assertEquals(0, $USER->id);
$user = $this->getDataGenerator()->create_user();
$this->assertObjectHasAttribute('description', $user);
$this->assertObjectHasAttribute('password', $user);
$this->assertObjectHasProperty('description', $user);
$this->assertObjectHasProperty('password', $user);
\core\session\manager::set_user($user);
$this->assertEquals($user->id, $USER->id);
$this->assertObjectNotHasProperty('description', $user);
$this->assertObjectNotHasProperty('password', $user);
$this->assertObjectHasAttribute('sesskey', $user);
$this->assertObjectHasProperty('sesskey', $user);
$this->assertSame($user, $GLOBALS['USER']);
$this->assertSame($GLOBALS['USER'], $_SESSION['USER']);
$this->assertSame($GLOBALS['USER'], $USER);

View File

@ -915,8 +915,8 @@ class upgradelib_test extends advanced_testcase {
foreach ($licenses as $license) {
$this->assertContains($license->shortname, $expectedshortnames);
$this->assertObjectHasAttribute('custom', $license);
$this->assertObjectHasAttribute('sortorder', $license);
$this->assertObjectHasProperty('custom', $license);
$this->assertObjectHasProperty('sortorder', $license);
}
// A core license which was deleted prior to upgrade should not be reinstalled.
$actualshortnames = $DB->get_records_menu('license', null, '', 'id, shortname');

View File

@ -178,12 +178,12 @@ class user_test extends \advanced_testcase {
$this->assertEquals('House', $result[0]->lastname);
$this->assertEquals('house@x.x', $result[0]->email);
$this->assertEquals(0, $result[0]->deleted);
$this->assertObjectHasAttribute('firstnamephonetic', $result[0]);
$this->assertObjectHasAttribute('lastnamephonetic', $result[0]);
$this->assertObjectHasAttribute('middlename', $result[0]);
$this->assertObjectHasAttribute('alternatename', $result[0]);
$this->assertObjectHasAttribute('imagealt', $result[0]);
$this->assertObjectHasAttribute('username', $result[0]);
$this->assertObjectHasProperty('firstnamephonetic', $result[0]);
$this->assertObjectHasProperty('lastnamephonetic', $result[0]);
$this->assertObjectHasProperty('middlename', $result[0]);
$this->assertObjectHasProperty('alternatename', $result[0]);
$this->assertObjectHasProperty('imagealt', $result[0]);
$this->assertObjectHasProperty('username', $result[0]);
// Now search by lastname, both names, and partials, case-insensitive.
$this->assertEquals($result, \core_user::search('House'));

View File

@ -171,7 +171,7 @@ class statement_test extends advanced_testcase {
$alldefined = array_merge($extras, $extravalues);
foreach ($allextras as $extra) {
if (in_array($extra, $alldefined)) {
$this->assertObjectHasAttribute($extra, $data);
$this->assertObjectHasProperty($extra, $data);
$this->assertNotEmpty($data->$extra);
} else {
$this->assertObjectNotHasProperty($extra, $data);
@ -305,7 +305,7 @@ class statement_test extends advanced_testcase {
$alldefined = array_merge($extras, $extravalues);
foreach ($allextras as $extra) {
if (in_array($extra, $alldefined)) {
$this->assertObjectHasAttribute($extra, $data);
$this->assertObjectHasProperty($extra, $data);
$this->assertNotEmpty($data->object);
} else {
$this->assertObjectNotHasProperty($extra, $data);
@ -340,7 +340,7 @@ class statement_test extends advanced_testcase {
// Check resulting json.
$statementdata = json_decode(json_encode($statement));
$this->assertObjectHasAttribute('attachments', $statementdata);
$this->assertObjectHasProperty('attachments', $statementdata);
$this->assertNotEmpty($statementdata->attachments);
$this->assertCount(1, $statementdata->attachments);
}
@ -382,7 +382,7 @@ class statement_test extends advanced_testcase {
$this->assertEquals($itemdata->length, $attachmentdata->length);
$statementdata = json_decode(json_encode($statement));
$this->assertObjectHasAttribute('attachments', $statementdata);
$this->assertObjectHasProperty('attachments', $statementdata);
$this->assertNotEmpty($statementdata->attachments);
$this->assertCount(1, $statementdata->attachments);

View File

@ -101,7 +101,7 @@ class externallib_test extends \advanced_testcase {
$found = 0;
foreach ($result['notifications'] as $notification) {
if (!empty($notification->customdata)) {
$this->assertObjectHasAttribute('datakey', json_decode($notification->customdata));
$this->assertObjectHasProperty('datakey', json_decode($notification->customdata));
$found++;
}
}

View File

@ -1212,36 +1212,36 @@ class api_test extends messagelib_test {
// Verify format of the return structure.
foreach ($conversations as $conv) {
$this->assertObjectHasAttribute('id', $conv);
$this->assertObjectHasAttribute('name', $conv);
$this->assertObjectHasAttribute('subname', $conv);
$this->assertObjectHasAttribute('imageurl', $conv);
$this->assertObjectHasAttribute('type', $conv);
$this->assertObjectHasAttribute('isfavourite', $conv);
$this->assertObjectHasAttribute('membercount', $conv);
$this->assertObjectHasAttribute('isread', $conv);
$this->assertObjectHasAttribute('unreadcount', $conv);
$this->assertObjectHasAttribute('members', $conv);
$this->assertObjectHasProperty('id', $conv);
$this->assertObjectHasProperty('name', $conv);
$this->assertObjectHasProperty('subname', $conv);
$this->assertObjectHasProperty('imageurl', $conv);
$this->assertObjectHasProperty('type', $conv);
$this->assertObjectHasProperty('isfavourite', $conv);
$this->assertObjectHasProperty('membercount', $conv);
$this->assertObjectHasProperty('isread', $conv);
$this->assertObjectHasProperty('unreadcount', $conv);
$this->assertObjectHasProperty('members', $conv);
foreach ($conv->members as $member) {
$this->assertObjectHasAttribute('id', $member);
$this->assertObjectHasAttribute('fullname', $member);
$this->assertObjectHasAttribute('profileimageurl', $member);
$this->assertObjectHasAttribute('profileimageurlsmall', $member);
$this->assertObjectHasAttribute('isonline', $member);
$this->assertObjectHasAttribute('showonlinestatus', $member);
$this->assertObjectHasAttribute('isblocked', $member);
$this->assertObjectHasAttribute('iscontact', $member);
$this->assertObjectHasAttribute('isdeleted', $member);
$this->assertObjectHasAttribute('canmessage', $member);
$this->assertObjectHasAttribute('requirescontact', $member);
$this->assertObjectHasAttribute('contactrequests', $member);
$this->assertObjectHasProperty('id', $member);
$this->assertObjectHasProperty('fullname', $member);
$this->assertObjectHasProperty('profileimageurl', $member);
$this->assertObjectHasProperty('profileimageurlsmall', $member);
$this->assertObjectHasProperty('isonline', $member);
$this->assertObjectHasProperty('showonlinestatus', $member);
$this->assertObjectHasProperty('isblocked', $member);
$this->assertObjectHasProperty('iscontact', $member);
$this->assertObjectHasProperty('isdeleted', $member);
$this->assertObjectHasProperty('canmessage', $member);
$this->assertObjectHasProperty('requirescontact', $member);
$this->assertObjectHasProperty('contactrequests', $member);
}
$this->assertObjectHasAttribute('messages', $conv);
$this->assertObjectHasProperty('messages', $conv);
foreach ($conv->messages as $message) {
$this->assertObjectHasAttribute('id', $message);
$this->assertObjectHasAttribute('useridfrom', $message);
$this->assertObjectHasAttribute('text', $message);
$this->assertObjectHasAttribute('timecreated', $message);
$this->assertObjectHasProperty('id', $message);
$this->assertObjectHasProperty('useridfrom', $message);
$this->assertObjectHasProperty('text', $message);
$this->assertObjectHasProperty('timecreated', $message);
}
}
}
@ -4232,8 +4232,8 @@ class api_test extends messagelib_test {
$sink->close();
// Test customdata.
$customdata = json_decode($messages[0]->customdata);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasAttribute('actionbuttons', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
$this->assertObjectHasProperty('actionbuttons', $customdata);
$this->assertCount(2, (array) $customdata->actionbuttons);
$this->assertEquals($user1->id, $request->userid);
@ -4308,12 +4308,12 @@ class api_test extends messagelib_test {
$this->assertEquals($user2->id, $request->id);
$this->assertEquals(fullname($user2), $request->fullname);
$this->assertObjectHasAttribute('profileimageurl', $request);
$this->assertObjectHasAttribute('profileimageurlsmall', $request);
$this->assertObjectHasAttribute('isonline', $request);
$this->assertObjectHasAttribute('showonlinestatus', $request);
$this->assertObjectHasAttribute('isblocked', $request);
$this->assertObjectHasAttribute('iscontact', $request);
$this->assertObjectHasProperty('profileimageurl', $request);
$this->assertObjectHasProperty('profileimageurlsmall', $request);
$this->assertObjectHasProperty('isonline', $request);
$this->assertObjectHasProperty('showonlinestatus', $request);
$this->assertObjectHasProperty('isblocked', $request);
$this->assertObjectHasProperty('iscontact', $request);
}
/**
@ -4980,7 +4980,7 @@ class api_test extends messagelib_test {
$this->assertEquals(true, $member1->showonlinestatus);
$this->assertEquals(false, $member1->iscontact);
$this->assertEquals(false, $member1->isblocked);
$this->assertObjectHasAttribute('contactrequests', $member1);
$this->assertObjectHasProperty('contactrequests', $member1);
$this->assertEmpty($member1->contactrequests);
$this->assertEquals($user2->id, $member2->id);
@ -4989,7 +4989,7 @@ class api_test extends messagelib_test {
$this->assertEquals(true, $member2->showonlinestatus);
$this->assertEquals(true, $member2->iscontact);
$this->assertEquals(false, $member2->isblocked);
$this->assertObjectHasAttribute('contactrequests', $member2);
$this->assertObjectHasProperty('contactrequests', $member2);
$this->assertEmpty($member2->contactrequests);
$this->assertEquals($user3->id, $member3->id);
@ -4998,7 +4998,7 @@ class api_test extends messagelib_test {
$this->assertEquals(true, $member3->showonlinestatus);
$this->assertEquals(false, $member3->iscontact);
$this->assertEquals(true, $member3->isblocked);
$this->assertObjectHasAttribute('contactrequests', $member3);
$this->assertObjectHasProperty('contactrequests', $member3);
$this->assertEmpty($member3->contactrequests);
}
@ -5149,18 +5149,18 @@ class api_test extends messagelib_test {
$messages = $messagessink->get_messages();
// Test customdata.
$customdata = json_decode($messages[0]->customdata);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasAttribute('actionbuttons', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
$this->assertObjectHasProperty('actionbuttons', $customdata);
$this->assertCount(1, (array) $customdata->actionbuttons);
$this->assertObjectHasAttribute('placeholders', $customdata);
$this->assertObjectHasProperty('placeholders', $customdata);
$this->assertCount(1, (array) $customdata->placeholders);
// Verify the message returned.
$this->assertInstanceOf(\stdClass::class, $message1);
$this->assertObjectHasAttribute('id', $message1);
$this->assertObjectHasProperty('id', $message1);
$this->assertEquals($user1->id, $message1->useridfrom);
$this->assertEquals('this is a message', $message1->text);
$this->assertObjectHasAttribute('timecreated', $message1);
$this->assertObjectHasProperty('timecreated', $message1);
// Verify events. Note: the event is a message read event because of an if (PHPUNIT) conditional within message_send(),
// however, we can still determine the number and ids of any recipients this way.
@ -5199,15 +5199,15 @@ class api_test extends messagelib_test {
$messages = $messagessink->get_messages();
// Verify the message returned.
$this->assertInstanceOf(\stdClass::class, $message1);
$this->assertObjectHasAttribute('id', $message1);
$this->assertObjectHasProperty('id', $message1);
$this->assertEquals($user1->id, $message1->useridfrom);
$this->assertEquals('message to the group', $message1->text);
$this->assertObjectHasAttribute('timecreated', $message1);
$this->assertObjectHasProperty('timecreated', $message1);
// Test customdata.
$customdata = json_decode($messages[0]->customdata);
$this->assertObjectHasAttribute('actionbuttons', $customdata);
$this->assertObjectHasProperty('actionbuttons', $customdata);
$this->assertCount(1, (array) $customdata->actionbuttons);
$this->assertObjectHasAttribute('placeholders', $customdata);
$this->assertObjectHasProperty('placeholders', $customdata);
$this->assertCount(1, (array) $customdata->placeholders);
$this->assertObjectNotHasProperty('notificationiconurl', $customdata); // No group image means no image.
@ -5268,14 +5268,14 @@ class api_test extends messagelib_test {
$messages = $messagessink->get_messages();
// Verify the message returned.
$this->assertInstanceOf(\stdClass::class, $message1);
$this->assertObjectHasAttribute('id', $message1);
$this->assertObjectHasProperty('id', $message1);
$this->assertEquals($user1->id, $message1->useridfrom);
$this->assertEquals('message to the group', $message1->text);
$this->assertObjectHasAttribute('timecreated', $message1);
$this->assertObjectHasProperty('timecreated', $message1);
// Test customdata.
$customdata = json_decode($messages[0]->customdata);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasAttribute('notificationsendericonurl', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
$this->assertObjectHasProperty('notificationsendericonurl', $customdata);
$this->assertEquals($groupimageurl, $customdata->notificationiconurl);
$this->assertEquals($group->name, $customdata->conversationname);
$userpicture = new \user_picture($user1);

View File

@ -1484,7 +1484,7 @@ class externallib_test extends externallib_advanced_testcase {
$messages = external_api::clean_returnvalue(core_message_external::get_messages_returns(), $messages);
$this->assertCount(1, $messages['messages']);
// Check we receive custom data as a unserialisable json.
$this->assertObjectHasAttribute('datakey', json_decode($messages['messages'][0]['customdata']));
$this->assertObjectHasProperty('datakey', json_decode($messages['messages'][0]['customdata']));
$this->assertEquals('mod_feedback', $messages['messages'][0]['component']);
$this->assertEquals('submission', $messages['messages'][0]['eventtype']);
$feedbackicon = clean_param($PAGE->get_renderer('core')->image_url('monologo', 'mod_feedback')->out(), PARAM_URL);
@ -4527,7 +4527,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals(true, $member1->showonlinestatus);
$this->assertEquals(false, $member1->iscontact);
$this->assertEquals(false, $member1->isblocked);
$this->assertObjectHasAttribute('contactrequests', $member1);
$this->assertObjectHasProperty('contactrequests', $member1);
$this->assertEmpty($member1->contactrequests);
$this->assertEquals($user2->id, $member2->id);
@ -4536,7 +4536,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals(true, $member2->showonlinestatus);
$this->assertEquals(true, $member2->iscontact);
$this->assertEquals(false, $member2->isblocked);
$this->assertObjectHasAttribute('contactrequests', $member2);
$this->assertObjectHasProperty('contactrequests', $member2);
$this->assertEmpty($member2->contactrequests);
$this->assertEquals($user3->id, $member3->id);
@ -4545,7 +4545,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals(true, $member3->showonlinestatus);
$this->assertEquals(false, $member3->iscontact);
$this->assertEquals(true, $member3->isblocked);
$this->assertObjectHasAttribute('contactrequests', $member3);
$this->assertObjectHasProperty('contactrequests', $member3);
$this->assertEmpty($member3->contactrequests);
}
@ -4712,12 +4712,12 @@ class externallib_test extends externallib_advanced_testcase {
external_api::clean_returnvalue(core_message_external::send_messages_to_conversation_returns(), $writtenmessages);
$this->assertCount(2, $writtenmessages);
$this->assertObjectHasAttribute('id', $writtenmessages[0]);
$this->assertObjectHasProperty('id', $writtenmessages[0]);
$this->assertEquals($user1->id, $writtenmessages[0]->useridfrom);
$this->assertEquals('<p>a message from user 1</p>', $writtenmessages[0]->text);
$this->assertNotEmpty($writtenmessages[0]->timecreated);
$this->assertObjectHasAttribute('id', $writtenmessages[1]);
$this->assertObjectHasProperty('id', $writtenmessages[1]);
$this->assertEquals($user1->id, $writtenmessages[1]->useridfrom);
$this->assertEquals('<p>another message from user 1</p>', $writtenmessages[1]->text);
$this->assertNotEmpty($writtenmessages[1]->timecreated);
@ -4764,12 +4764,12 @@ class externallib_test extends externallib_advanced_testcase {
external_api::clean_returnvalue(core_message_external::send_messages_to_conversation_returns(), $writtenmessages);
$this->assertCount(2, $writtenmessages);
$this->assertObjectHasAttribute('id', $writtenmessages[0]);
$this->assertObjectHasProperty('id', $writtenmessages[0]);
$this->assertEquals($user1->id, $writtenmessages[0]->useridfrom);
$this->assertEquals('<p>a message from user 1 to group conv</p>', $writtenmessages[0]->text);
$this->assertNotEmpty($writtenmessages[0]->timecreated);
$this->assertObjectHasAttribute('id', $writtenmessages[1]);
$this->assertObjectHasProperty('id', $writtenmessages[1]);
$this->assertEquals($user1->id, $writtenmessages[1]->useridfrom);
$this->assertEquals('<p>another message from user 1 to group conv</p>', $writtenmessages[1]->text);
$this->assertNotEmpty($writtenmessages[1]->timecreated);

View File

@ -759,7 +759,7 @@ class external_test extends externallib_advanced_testcase {
$customdata = json_decode($messages[0]->customdata);
$this->assertEquals($this->feedback->id, $customdata->instance);
$this->assertEquals($this->feedback->cmid, $customdata->cmid);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
}
/**

View File

@ -1606,8 +1606,8 @@ class mail_test extends \advanced_testcase {
$this->assertEquals($forum->cmid, $customdata->cmid);
$this->assertEquals($post->id, $customdata->postid);
$this->assertEquals($discussion->id, $customdata->discussionid);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasAttribute('actionbuttons', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
$this->assertObjectHasProperty('actionbuttons', $customdata);
$this->assertCount(1, (array) $customdata->actionbuttons);
}
}

View File

@ -302,21 +302,21 @@ class locallib_test extends mod_lti_testcase {
// Try when the forcessl config property is not set.
lti_prepare_type_for_save($type, $config);
$this->assertObjectHasAttribute('lti_forcessl', $config);
$this->assertObjectHasProperty('lti_forcessl', $config);
$this->assertEquals(0, $config->lti_forcessl);
$this->assertEquals(0, $type->forcessl);
// Try when forcessl config property is set.
$config->lti_forcessl = 1;
lti_prepare_type_for_save($type, $config);
$this->assertObjectHasAttribute('lti_forcessl', $config);
$this->assertObjectHasProperty('lti_forcessl', $config);
$this->assertEquals(1, $config->lti_forcessl);
$this->assertEquals(1, $type->forcessl);
// Try when forcessl config property is set to 0.
$config->lti_forcessl = 0;
lti_prepare_type_for_save($type, $config);
$this->assertObjectHasAttribute('lti_forcessl', $config);
$this->assertObjectHasProperty('lti_forcessl', $config);
$this->assertEquals(0, $config->lti_forcessl);
$this->assertEquals(0, $type->forcessl);
}

View File

@ -1553,7 +1553,7 @@ class external_test extends externallib_advanced_testcase {
$this->assertEquals($quizobj->get_quizid(), $customdata->instance);
$this->assertEquals($quizobj->get_cmid(), $customdata->cmid);
$this->assertEquals($attempt->id, $customdata->attemptid);
$this->assertObjectHasAttribute('notificationiconurl', $customdata);
$this->assertObjectHasProperty('notificationiconurl', $customdata);
}
// Start new attempt.

View File

@ -269,7 +269,7 @@ class provider_test extends provider_testcase {
$workshop = $writer->get_data([]);
$this->assertEquals('Workshop11', $workshop->name);
$this->assertObjectHasAttribute('phase', $workshop);
$this->assertObjectHasProperty('phase', $workshop);
$mysubmission = $writer->get_data([
get_string('mysubmission', 'mod_workshop'),

View File

@ -226,9 +226,9 @@ class column_manager_test extends advanced_testcase {
$questionlistcolumns = $columnmanager->get_columns();
$this->assertIsArray($questionlistcolumns);
foreach ($questionlistcolumns as $columnnobject) {
$this->assertObjectHasAttribute('class', $columnnobject);
$this->assertObjectHasAttribute('name', $columnnobject);
$this->assertObjectHasAttribute('colname', $columnnobject);
$this->assertObjectHasProperty('class', $columnnobject);
$this->assertObjectHasProperty('name', $columnnobject);
$this->assertObjectHasProperty('colname', $columnnobject);
}
}

View File

@ -356,10 +356,10 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals($expected->qtype, $actual->qtype);
// These values are added by the formatting. It doesn't matter what the
// exact values are just that they are returned.
$this->assertObjectHasAttribute('icon', $actual);
$this->assertObjectHasAttribute('key', $actual->icon);
$this->assertObjectHasAttribute('component', $actual->icon);
$this->assertObjectHasAttribute('alttext', $actual->icon);
$this->assertObjectHasProperty('icon', $actual);
$this->assertObjectHasProperty('key', $actual->icon);
$this->assertObjectHasProperty('component', $actual->icon);
$this->assertObjectHasProperty('alttext', $actual->icon);
}
/**

View File

@ -201,7 +201,7 @@ class question_type_test extends \advanced_testcase {
}
}
$this->assertObjectHasAttribute('subquestions', $actualquestiondata->options);
$this->assertObjectHasProperty('subquestions', $actualquestiondata->options);
$subqpropstoignore = array('id');
foreach ($questiondata->options->subquestions as $subq) {

View File

@ -313,7 +313,7 @@ class question_type_test extends \advanced_testcase {
}
}
$this->assertObjectHasAttribute('questions', $actualquestiondata->options);
$this->assertObjectHasProperty('questions', $actualquestiondata->options);
$subqpropstoignore =
['id', 'category', 'parent', 'contextid', 'question', 'options', 'stamp', 'timemodified',

View File

@ -58,7 +58,7 @@ class custom_report_details_exporter_test extends advanced_testcase {
$this->assertEquals(users::get_name(), $export->sourcename);
// We use the user exporter for the modifier of the report.
$this->assertObjectHasAttribute('modifiedby', $export);
$this->assertObjectHasProperty('modifiedby', $export);
$this->assertEquals(fullname($user), $export->modifiedby->fullname);
}
}

View File

@ -392,11 +392,11 @@ class fields_test extends \advanced_testcase {
// User id was renamed.
$this->assertObjectNotHasProperty('id', $records['XXX1']);
$this->assertObjectHasAttribute('userid', $records['XXX1']);
$this->assertObjectHasProperty('userid', $records['XXX1']);
// Other fields are normal (just try a couple).
$this->assertObjectHasAttribute('firstname', $records['XXX1']);
$this->assertObjectHasAttribute('imagealt', $records['XXX1']);
$this->assertObjectHasProperty('firstname', $records['XXX1']);
$this->assertObjectHasProperty('imagealt', $records['XXX1']);
// Check the user id is actually right.
$this->assertEquals('XXX1',
@ -417,11 +417,11 @@ class fields_test extends \advanced_testcase {
// User id was renamed.
$this->assertObjectNotHasProperty('id', $records['XXX1']);
$this->assertObjectNotHasProperty('u_id', $records['XXX1']);
$this->assertObjectHasAttribute('userid', $records['XXX1']);
$this->assertObjectHasProperty('userid', $records['XXX1']);
// Other fields are prefixed (just try a couple).
$this->assertObjectHasAttribute('u_firstname', $records['XXX1']);
$this->assertObjectHasAttribute('u_imagealt', $records['XXX1']);
$this->assertObjectHasProperty('u_firstname', $records['XXX1']);
$this->assertObjectHasProperty('u_imagealt', $records['XXX1']);
// Without a leading comma.
['selects' => $selects, 'joins' => $joins, 'params' => $joinparams] =
@ -437,8 +437,8 @@ class fields_test extends \advanced_testcase {
// ID should be the first field used by get_records_sql.
$this->assertEquals($key, $record->id);
// Check 2 other sample properties.
$this->assertObjectHasAttribute('firstname', $record);
$this->assertObjectHasAttribute('imagealt', $record);
$this->assertObjectHasProperty('firstname', $record);
$this->assertObjectHasProperty('imagealt', $record);
}
}

View File

@ -59,7 +59,7 @@ class profilelib_test extends \advanced_testcase {
$this->assertObjectNotHasProperty('frogdesc', profile_user_record($user->id));
// Check that profile_user_record returns all the fields when requested.
$this->assertObjectHasAttribute('frogdesc', profile_user_record($user->id, false));
$this->assertObjectHasProperty('frogdesc', profile_user_record($user->id, false));
// Add another custom field, this time of normal text type.
$id2 = $this->getDataGenerator()->create_custom_profile_field(array(
@ -75,10 +75,10 @@ class profilelib_test extends \advanced_testcase {
$this->assertArrayHasKey($id2, profile_get_custom_fields(true));
// Check profile_user_record returns same field.
$this->assertObjectHasAttribute('frogname', profile_user_record($user->id));
$this->assertObjectHasProperty('frogname', profile_user_record($user->id));
// Check that profile_user_record returns all the fields when requested.
$this->assertObjectHasAttribute('frogname', profile_user_record($user->id, false));
$this->assertObjectHasProperty('frogname', profile_user_record($user->id, false));
}
/**
@ -233,7 +233,7 @@ class profilelib_test extends \advanced_testcase {
$this->assertEquals('Gryffindor', $profilefields1->house);
$profilefields2 = profile_user_record($harry->id);
$this->assertObjectHasAttribute('house', $profilefields2);
$this->assertObjectHasProperty('house', $profilefields2);
$this->assertNull($profilefields2->house);
}

View File

@ -103,9 +103,9 @@ class userselector_test extends \advanced_testcase {
foreach ($courseselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasAttribute('country', $user);
$this->assertObjectHasAttribute('city', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectHasProperty('country', $user);
$this->assertObjectHasProperty('city', $user);
}
}
}
@ -124,7 +124,7 @@ class userselector_test extends \advanced_testcase {
foreach ($courseselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectNotHasProperty('country', $user);
$this->assertObjectNotHasProperty('city', $user);
}
@ -144,17 +144,17 @@ class userselector_test extends \advanced_testcase {
foreach ($systemselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasAttribute('country', $user);
$this->assertObjectHasAttribute('city', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectHasProperty('country', $user);
$this->assertObjectHasProperty('city', $user);
}
}
foreach ($courseselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasAttribute('country', $user);
$this->assertObjectHasAttribute('city', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectHasProperty('country', $user);
$this->assertObjectHasProperty('city', $user);
}
}
}
@ -178,7 +178,7 @@ class userselector_test extends \advanced_testcase {
foreach ($systemselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectNotHasProperty('country', $user);
$this->assertObjectNotHasProperty('city', $user);
}
@ -186,9 +186,9 @@ class userselector_test extends \advanced_testcase {
foreach ($courseselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasAttribute('country', $user);
$this->assertObjectHasAttribute('city', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectHasProperty('country', $user);
$this->assertObjectHasProperty('city', $user);
}
}
}
@ -209,7 +209,7 @@ class userselector_test extends \advanced_testcase {
foreach ($systemselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectNotHasProperty('country', $user);
$this->assertObjectNotHasProperty('city', $user);
}
@ -217,7 +217,7 @@ class userselector_test extends \advanced_testcase {
foreach ($courseselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectNotHasProperty('country', $user);
$this->assertObjectNotHasProperty('city', $user);
}
@ -242,9 +242,9 @@ class userselector_test extends \advanced_testcase {
foreach ($implicitselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasAttribute('country', $user);
$this->assertObjectHasAttribute('city', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectHasProperty('country', $user);
$this->assertObjectHasProperty('city', $user);
$this->assertObjectNotHasProperty('email', $user);
$this->assertObjectNotHasProperty('department', $user);
}
@ -252,9 +252,9 @@ class userselector_test extends \advanced_testcase {
foreach ($explicitselector->find_users('') as $found) {
foreach ($found as $user) {
$this->assertObjectHasAttribute('idnumber', $user);
$this->assertObjectHasAttribute('country', $user);
$this->assertObjectHasAttribute('city', $user);
$this->assertObjectHasProperty('idnumber', $user);
$this->assertObjectHasProperty('country', $user);
$this->assertObjectHasProperty('city', $user);
$this->assertObjectNotHasProperty('email', $user);
$this->assertObjectNotHasProperty('department', $user);
}