From ac70aba95c13c669384dc6e1ae28647f7c838b65 Mon Sep 17 00:00:00 2001 From: Julio Date: Tue, 24 Dec 2019 08:43:00 +0100 Subject: [PATCH] Behat - fix tests --- public/main/admin/user_update_import.php | 1 + public/main/exercise/answer.class.php | 1 + public/main/exercise/tests_category.php | 1 + public/main/exercise/unique_answer.class.php | 1 + public/main/inc/lib/api.lib.php | 2 +- public/main/inc/lib/sessionmanager.lib.php | 117 +++++++++--------- .../main/session/add_courses_to_session.php | 5 +- .../Resources/views/Account/edit.html.twig | 3 +- tests/behat/features/profile.feature | 4 +- tests/behat/features/sessionAccess.feature | 2 +- .../behat/features/sessionManagement.feature | 12 +- tests/behat/features/toolExercise.feature | 2 +- 12 files changed, 77 insertions(+), 74 deletions(-) diff --git a/public/main/admin/user_update_import.php b/public/main/admin/user_update_import.php index 91b5a220d9..639b2de1df 100644 --- a/public/main/admin/user_update_import.php +++ b/public/main/admin/user_update_import.php @@ -1,4 +1,5 @@ ".SESSION_RELATION_TYPE_RRHH; // Don't reset session_rel_user.registered_at of users that will be registered later anyways. if (!empty($userList)) { @@ -2084,7 +2085,7 @@ class SessionManager } // update number of users in the session - $sql = "UPDATE $tbl_session + $sql = "UPDATE $tbl_session SET nbr_users = (SELECT count(user_id) FROM $tbl_session_rel_user WHERE session_id = $sessionId) WHERE id = $sessionId"; Database::query($sql); @@ -2469,7 +2470,7 @@ class SessionManager if (Database::affected_rows($result)) { // Update number of users in this relation - $sql = "UPDATE $tbl_session_rel_course SET + $sql = "UPDATE $tbl_session_rel_course SET nbr_users = nbr_users - 1 WHERE session_id = $session_id AND c_id = $courseId"; Database::query($sql); @@ -3315,7 +3316,7 @@ class SessionManager $extraField = new ExtraFieldModel('session'); $field = $extraField->get_handler_field_info_by_field_variable('image'); - $sql = "SELECT + $sql = "SELECT s.id, s.name, s.id_coach, @@ -3508,7 +3509,7 @@ class SessionManager $sql = "DELETE FROM $tbl_session_rel_user WHERE - session_id = $sessionId AND + session_id = $sessionId AND relation_type =".SESSION_RELATION_TYPE_RRHH; Database::query($sql); @@ -3559,14 +3560,14 @@ class SessionManager if (api_is_multiple_url_enabled()) { $sql = "SELECT s.session_id FROM $tbl_session_rel_user s - INNER JOIN $tbl_session_rel_access_url a + INNER JOIN $tbl_session_rel_access_url a ON (a.session_id = s.session_id) WHERE s.user_id = $userId AND relation_type = ".SESSION_RELATION_TYPE_RRHH." AND access_url_id = ".api_get_current_access_url_id(); } else { - $sql = "SELECT s.session_id + $sql = "SELECT s.session_id FROM $tbl_session_rel_user s WHERE user_id = $userId AND relation_type=".SESSION_RELATION_TYPE_RRHH; } @@ -3826,9 +3827,9 @@ class SessionManager $whereConditions .= $keywordCondition; $subQuery = $sessionQuery.$courseSessionQuery; - $sql = " $select + $sql = " $select FROM $tbl_session s - INNER JOIN $tbl_session_rel_access_url a + INNER JOIN $tbl_session_rel_access_url a ON (s.id = a.session_id) $sqlInjectJoins WHERE @@ -3838,7 +3839,7 @@ class SessionManager ) $whereConditions $extraFieldsConditions - $sqlInjectWhere + $sqlInjectWhere $orderCondition $limitCondition"; @@ -4311,10 +4312,10 @@ class SessionManager $table = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER); $tbl_user = Database::get_main_table(TABLE_MAIN_USER); $sql = "SELECT session_rcru.status - FROM $table session_rcru + FROM $table session_rcru INNER JOIN $tbl_user user ON (session_rcru.user_id = user.user_id) - WHERE + WHERE session_rcru.session_id = '".intval($session_id)."' AND session_rcru.c_id ='".intval($courseId)."' AND user.user_id = ".intval($user_id); @@ -4779,12 +4780,12 @@ class SessionManager $sql = "SELECT name, s.id FROM $table_session_course sc - INNER JOIN $table_session s + INNER JOIN $table_session s ON (sc.session_id = s.id) INNER JOIN $url u ON (u.session_id = s.id) - WHERE - u.access_url_id = $urlId AND + WHERE + u.access_url_id = $urlId AND sc.c_id = '$courseId' "; $result = Database::query($sql); @@ -5781,7 +5782,7 @@ class SessionManager } $access_url_id = api_get_current_access_url_id(); UrlManager::add_session_to_url($session_id, $access_url_id); - $sql = "UPDATE $tbl_session SET nbr_users = '$user_counter', nbr_courses = '$course_counter' + $sql = "UPDATE $tbl_session SET nbr_users = '$user_counter', nbr_courses = '$course_counter' WHERE id = '$session_id'"; Database::query($sql); @@ -6101,7 +6102,7 @@ class SessionManager if (!empty($userConditionsFromDrh)) { $userUnion = " UNION ( - $select + $select FROM $tbl_user u INNER JOIN $tbl_user_rel_access_url url ON (url.user_id = u.id) $where @@ -6436,11 +6437,11 @@ class SessionManager $courseUser = Database::get_main_table(TABLE_MAIN_COURSE_USER); // Select the teachers. - $sql = "SELECT DISTINCT(cu.user_id) + $sql = "SELECT DISTINCT(cu.user_id) FROM $course c - INNER JOIN $sessionCourse src + INNER JOIN $sessionCourse src ON c.id = src.c_id - INNER JOIN $courseUser cu + INNER JOIN $courseUser cu ON (cu.c_id = c.id) WHERE src.session_id IN ('$sessionToString') AND cu.status = 1"; $result = Database::query($sql); @@ -7111,15 +7112,15 @@ class SessionManager $courseCondition = " c_id = $courseId AND "; } - $sql = "SELECT - COUNT(u.id) as count, - u.id, - scu.status status_in_session, + $sql = "SELECT + COUNT(u.id) as count, + u.id, + scu.status status_in_session, u.status user_status FROM $table scu - INNER JOIN $tableUser u + INNER JOIN $tableUser u ON scu.user_id = u.id - WHERE + WHERE $courseCondition scu.session_id = ".$sessionId." GROUP BY u.id"; @@ -7613,7 +7614,7 @@ class SessionManager $sql = "SELECT DISTINCT s.* FROM $sessionTable s - INNER JOIN $sessionUserTable sru + INNER JOIN $sessionUserTable sru ON s.id = sru.id_session WHERE (sru.id_user IN (".implode(', ', $userIdList).") @@ -8497,7 +8498,7 @@ class SessionManager LEFT JOIN $tbl_session_category sc ON (s.session_category_id = sc.id) INNER JOIN $tbl_user u - ON (s.id_coach = u.user_id) + ON (s.id_coach = u.user_id) $where $limit "; @@ -8508,19 +8509,19 @@ class SessionManager if ($access_url_id != -1) { $query = "$select FROM $tbl_session s - LEFT JOIN $tbl_session_field_values fv + LEFT JOIN $tbl_session_field_values fv ON (fv.item_id = s.id) - LEFT JOIN $tbl_session_field_options fvo + LEFT JOIN $tbl_session_field_options fvo ON (fv.field_id = fvo.field_id) - LEFT JOIN $tbl_session_rel_course src + LEFT JOIN $tbl_session_rel_course src ON (src.session_id = s.id) - LEFT JOIN $tbl_course c + LEFT JOIN $tbl_course c ON (src.c_id = c.id) - LEFT JOIN $tbl_session_category sc + LEFT JOIN $tbl_session_category sc ON (s.session_category_id = sc.id) - INNER JOIN $tbl_user u + INNER JOIN $tbl_user u ON (s.id_coach = u.user_id) - INNER JOIN $table_access_url_rel_session ar + INNER JOIN $table_access_url_rel_session ar ON (ar.session_id = s.id AND ar.access_url_id = $access_url_id) $where $limit @@ -8945,7 +8946,7 @@ class SessionManager return []; } - $sql = "SELECT * FROM $table + $sql = "SELECT * FROM $table WHERE c_id = $courseId AND user_id = $userId"; $result = Database::query($sql); @@ -8992,9 +8993,9 @@ class SessionManager INNER JOIN ChamiloCoreBundle:SessionRelUser su WITH scu.user = su.user AND scu.session = su.session - WHERE - scu.course = :course AND - su.relationType <> :relationType AND + WHERE + scu.course = :course AND + su.relationType <> :relationType AND scu.session = :session ") ->setParameters([ diff --git a/public/main/session/add_courses_to_session.php b/public/main/session/add_courses_to_session.php index bef352fb11..1443e4535d 100644 --- a/public/main/session/add_courses_to_session.php +++ b/public/main/session/add_courses_to_session.php @@ -1,9 +1,8 @@ {{ 'Edit profile' | trans }}

{{ user.username }}

{{ form_start(form, { 'action': path('chamilo_core_account_edit'), 'attr': { 'class': 'edit' } }) }} {{ form_widget(form) }}
- +
{{ form_end(form) }} {% endautoescape %} diff --git a/tests/behat/features/profile.feature b/tests/behat/features/profile.feature index 46039be3fd..3b081f0104 100644 --- a/tests/behat/features/profile.feature +++ b/tests/behat/features/profile.feature @@ -10,14 +10,14 @@ Feature: Profile page Then I follow "Edit profile" Then I fill in the following: | profile_firstname | Andrew | - And I press "Save" + And I press "Update profile" And wait for the page to be loaded Then I should see "Updated" And I should see "Andrew" Then I follow "Edit profile" Then I fill in the following: | profile_firstname | Andrea | - And I press "Save" + And I press "Update profile" Then I should see "Updated" Then I am on "/main/social/home.php" Then I should see "Andrea" \ No newline at end of file diff --git a/tests/behat/features/sessionAccess.feature b/tests/behat/features/sessionAccess.feature index 9d55a94c30..69dc358bd0 100644 --- a/tests/behat/features/sessionAccess.feature +++ b/tests/behat/features/sessionAccess.feature @@ -54,7 +54,7 @@ Feature: Session access Scenario: ywarnier connect to Session 2 Given I am logged as "ywarnier" Then I am on course "TEMPPRIVATE" homepage in session "Session2" - Then I should see "You are not allowed" + Then I should see "Unauthorised access to course" Scenario: ywarnier connect to session that doesn't exists Given I am logged as "ywarnier" diff --git a/tests/behat/features/sessionManagement.feature b/tests/behat/features/sessionManagement.feature index bb24611c64..34053c4064 100644 --- a/tests/behat/features/sessionManagement.feature +++ b/tests/behat/features/sessionManagement.feature @@ -43,7 +43,7 @@ Feature: Session management tool Then I should see "Update successful" Scenario: Check session description is not present - Given I am on "/user_portal.php?nosession=true" + Given I am on "/main/index/user_portal.php" Then I should see "Temp Session" And I should not see "Description for Temp Session" @@ -58,10 +58,10 @@ Feature: Session management tool Scenario: Check session description with platform setting off Given I am a platform administrator - And I am on "/main/admin/settings.php?search_field=show_session_description&category=search_setting" - And I check the "show_session_description" radio button with "false" value - And I press "Save settings" - Then I am on "/user_portal.php?nosession=true" + And I am on "/admin/settings/search_settings?keyword=show_session_description" + And I select "yes" from "form_show_session_description" + And I press "Save" + Then I am on "/main/index/user_portal.php" Then I should see "Temp Session" And I should not see "Description for Temp Session" @@ -71,7 +71,7 @@ Feature: Session management tool And I check the "show_session_description" radio button with "true" value And I press "Save settings" Then I should see "Update successful" - Then I am on "/user_portal.php?nosession=true" + Then I am on "/main/index/user_portal.php" Then I should see "Temp Session" And I should see "Description for Temp Session" diff --git a/tests/behat/features/toolExercise.feature b/tests/behat/features/toolExercise.feature index 4d18f4bd54..ba01021510 100644 --- a/tests/behat/features/toolExercise.feature +++ b/tests/behat/features/toolExercise.feature @@ -398,7 +398,7 @@ Feature: Exercise tool | Total | 190 / 190 | 100% | Scenario: Teacher looks at exercise results by categories - Given I am on "/user_portal.php" + Given I am on "/main/index/user_portal.php" And I am on course "TEMP" homepage in session "Session Exercise" Then I should see "TEMP (Session Exercise)" And I am on "/main/exercise/exercise.php?cid=1"