rspec 14 20 ruby21
Passed Started
by
@bak1an

Anton Baklanov
1Running with gitlab-ci-multi-runner 1.6.0 (01b3ea1)2Using Docker executor with image ruby:2.1 ...3Pulling docker image mysql:latest ...4Starting service mysql:latest ...5Pulling docker image redis:alpine ...6Starting service redis:alpine ...7Waiting for services to be up and running...8Pulling docker image ruby:2.1 ...9Running on runner-30dcea4b-project-472466-concurrent-0 via runner-30dcea4b-machine-1475420274-c9ecf341-digital-ocean-4gb...10Cloning repository for master with git depth set to 20...11Cloning into '/builds/bak1an/gitlab-ce'...12Checking out 9235f1d4 as master...13Checking cache for ruby21...14Downloading cache.zip from https://runners-cache-1.gitlab.com:443/runner/runner/30dcea4b/project/472466/ruby21 15Downloading artifacts for knapsack (4678251)...16Downloading artifacts from coordinator... ok id=4678251 responseStatus=200 OK token=LnYev2YS17$ source ./scripts/prepare_build.sh18/builds/bak1an/gitlab-ce/vendor/apt /builds/bak1an/gitlab-ce19/builds/bak1an/gitlab-ce20debconf: delaying package configuration, since apt-utils is not installed21Selecting previously unselected package cmake-data.22(Reading database ... 21157 files and directories currently installed.)23Preparing to unpack .../cmake-data_3.0.2-1+deb8u1_all.deb ...24Unpacking cmake-data (3.0.2-1+deb8u1) ...25Selecting previously unselected package libarchive13:amd64.26Preparing to unpack .../libarchive13_3.1.2-11+deb8u3_amd64.deb ...27Unpacking libarchive13:amd64 (3.1.2-11+deb8u3) ...28Selecting previously unselected package cmake.29Preparing to unpack .../cmake_3.0.2-1+deb8u1_amd64.deb ...30Unpacking cmake (3.0.2-1+deb8u1) ...31Selecting previously unselected package libc-ares2:amd64.32Preparing to unpack .../libc-ares2_1.10.0-2+deb8u1_amd64.deb ...33Unpacking libc-ares2:amd64 (1.10.0-2+deb8u1) ...34Selecting previously unselected package icu-devtools.35Preparing to unpack .../icu-devtools_52.1-8+deb8u3_amd64.deb ...36Unpacking icu-devtools (52.1-8+deb8u3) ...37Selecting previously unselected package libdbi-perl.38Preparing to unpack .../libdbi-perl_1.631-3+b1_amd64.deb ...39Unpacking libdbi-perl (1.631-3+b1) ...40Selecting previously unselected package libdbd-mysql-perl.41Preparing to unpack .../libdbd-mysql-perl_4.028-2+deb8u1_amd64.deb ...42Unpacking libdbd-mysql-perl (4.028-2+deb8u1) ...43Selecting previously unselected package libicu-dev:amd64.44Preparing to unpack .../libicu-dev_52.1-8+deb8u3_amd64.deb ...45Unpacking libicu-dev:amd64 (52.1-8+deb8u3) ...46Selecting previously unselected package libterm-readkey-perl.47Preparing to unpack .../libterm-readkey-perl_2.32-1+b1_amd64.deb ...48Unpacking libterm-readkey-perl (2.32-1+b1) ...49Selecting previously unselected package libv8-3.14.5.50Preparing to unpack .../libv8-3.14.5_3.14.5.8-8.1_amd64.deb ...51Unpacking libv8-3.14.5 (3.14.5.8-8.1) ...52Selecting previously unselected package lsb-release.53Preparing to unpack .../lsb-release_4.1+Debian13+nmu1_all.deb ...54Unpacking lsb-release (4.1+Debian13+nmu1) ...55Selecting previously unselected package mysql-client-5.5.56Preparing to unpack .../mysql-client-5.5_5.5.52-0+deb8u1_amd64.deb ...57Unpacking mysql-client-5.5 (5.5.52-0+deb8u1) ...58Selecting previously unselected package mysql-client.59Preparing to unpack .../mysql-client_5.5.52-0+deb8u1_all.deb ...60Unpacking mysql-client (5.5.52-0+deb8u1) ...61Selecting previously unselected package postgresql-client-common.62Preparing to unpack .../postgresql-client-common_165+deb8u1_all.deb ...63Unpacking postgresql-client-common (165+deb8u1) ...64Selecting previously unselected package postgresql-client-9.4.65Preparing to unpack .../postgresql-client-9.4_9.4.9-0+deb8u1_amd64.deb ...66Unpacking postgresql-client-9.4 (9.4.9-0+deb8u1) ...67Selecting previously unselected package postgresql-client.68Preparing to unpack .../postgresql-client_9.4+165+deb8u1_all.deb ...69Unpacking postgresql-client (9.4+165+deb8u1) ...70Selecting previously unselected package unzip.71Preparing to unpack .../unzip_6.0-16+deb8u2_amd64.deb ...72Unpacking unzip (6.0-16+deb8u2) ...73Selecting previously unselected package nodejs.74Preparing to unpack .../nodejs_0.10.29~dfsg-2_amd64.deb ...75Unpacking nodejs (0.10.29~dfsg-2) ...76Processing triggers for mime-support (3.58) ...77Setting up cmake-data (3.0.2-1+deb8u1) ...78Setting up libarchive13:amd64 (3.1.2-11+deb8u3) ...79Setting up cmake (3.0.2-1+deb8u1) ...80Setting up libc-ares2:amd64 (1.10.0-2+deb8u1) ...81Setting up icu-devtools (52.1-8+deb8u3) ...82Setting up libdbi-perl (1.631-3+b1) ...83Setting up libdbd-mysql-perl (4.028-2+deb8u1) ...84Setting up libicu-dev:amd64 (52.1-8+deb8u3) ...85Setting up libterm-readkey-perl (2.32-1+b1) ...86Setting up libv8-3.14.5 (3.14.5.8-8.1) ...87Setting up lsb-release (4.1+Debian13+nmu1) ...88Setting up mysql-client-5.5 (5.5.52-0+deb8u1) ...89Setting up mysql-client (5.5.52-0+deb8u1) ...90Setting up postgresql-client-common (165+deb8u1) ...91Setting up postgresql-client-9.4 (9.4.9-0+deb8u1) ...92update-alternatives: using /usr/share/postgresql/9.4/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode93Setting up postgresql-client (9.4+165+deb8u1) ...94Setting up unzip (6.0-16+deb8u2) ...95Setting up nodejs (0.10.29~dfsg-2) ...96update-alternatives: using /usr/bin/nodejs to provide /usr/bin/js (js) in auto mode97Processing triggers for libc-bin (2.19-18+deb8u6) ...98$ cp config/gitlab.yml.example config/gitlab.yml99$ bundle --version100Bundler version 1.13.2101$ [ "$USE_BUNDLE_INSTALL" != "true" ] || retry bundle install --without postgres production --jobs $(nproc) "${FLAGS[@]}"102$ retry gem install knapsack103Successfully installed timecop-0.8.1104Successfully installed knapsack-1.12.11052 gems installed106$ [ "$SETUP_DB" != "true" ] || bundle exec rake db:drop db:create db:schema:load db:migrate107Database 'gitlabhq_test' does not exist108WARNING: This version of GitLab depends on gitlab-shell 3.6.2, but you're running Unknown. Please update gitlab-shell.109Missing Rails.application.secrets.secret_key_base for test environment. The secret will be generated and stored in config/secrets.yml.110Missing Rails.application.secrets.otp_key_base for test environment. The secret will be generated and stored in config/secrets.yml.111Missing Rails.application.secrets.db_key_base for test environment. The secret will be generated and stored in config/secrets.yml.112-- enable_extension("plpgsql")113 -> 0.0021s114-- enable_extension("pg_trgm")115 -> 0.0000s116-- create_table("abuse_reports", {:force=>:cascade})117 -> 0.0232s118-- create_table("appearances", {:force=>:cascade})119 -> 0.0141s120-- create_table("application_settings", {:force=>:cascade})121 -> 0.0153s122-- create_table("audit_events", {:force=>:cascade})123 -> 0.0118s124-- add_index("audit_events", ["entity_id", "entity_type"], {:name=>"index_audit_events_on_entity_id_and_entity_type", :using=>:btree})125 -> 0.0241s126-- create_table("award_emoji", {:force=>:cascade})127 -> 0.0119s128-- add_index("award_emoji", ["awardable_type", "awardable_id"], {:name=>"index_award_emoji_on_awardable_type_and_awardable_id", :using=>:btree})129 -> 0.0127s130-- add_index("award_emoji", ["user_id", "name"], {:name=>"index_award_emoji_on_user_id_and_name", :using=>:btree})131 -> 0.0106s132-- add_index("award_emoji", ["user_id"], {:name=>"index_award_emoji_on_user_id", :using=>:btree})133 -> 0.0141s134-- create_table("boards", {:force=>:cascade})135 -> 0.0133s136-- add_index("boards", ["project_id"], {:name=>"index_boards_on_project_id", :using=>:btree})137 -> 0.0071s138-- create_table("broadcast_messages", {:force=>:cascade})139 -> 0.0095s140-- create_table("ci_application_settings", {:force=>:cascade})141 -> 0.0099s142-- create_table("ci_builds", {:force=>:cascade})143 -> 0.0111s144-- add_index("ci_builds", ["commit_id", "stage_idx", "created_at"], {:name=>"index_ci_builds_on_commit_id_and_stage_idx_and_created_at", :using=>:btree})145 -> 0.0092s146-- add_index("ci_builds", ["commit_id", "status", "type"], {:name=>"index_ci_builds_on_commit_id_and_status_and_type", :using=>:btree})147 -> 0.0124s148-- add_index("ci_builds", ["commit_id", "type", "name", "ref"], {:name=>"index_ci_builds_on_commit_id_and_type_and_name_and_ref", :using=>:btree})149 -> 0.0077s150-- add_index("ci_builds", ["commit_id", "type", "ref"], {:name=>"index_ci_builds_on_commit_id_and_type_and_ref", :using=>:btree})151 -> 0.0148s152-- add_index("ci_builds", ["commit_id"], {:name=>"index_ci_builds_on_commit_id", :using=>:btree})153 -> 0.0093s154-- add_index("ci_builds", ["gl_project_id"], {:name=>"index_ci_builds_on_gl_project_id", :using=>:btree})155 -> 0.0132s156-- add_index("ci_builds", ["project_id"], {:name=>"index_ci_builds_on_project_id", :using=>:btree})157 -> 0.0101s158-- add_index("ci_builds", ["runner_id"], {:name=>"index_ci_builds_on_runner_id", :using=>:btree})159 -> 0.0091s160-- add_index("ci_builds", ["status"], {:name=>"index_ci_builds_on_status", :using=>:btree})161 -> 0.0083s162-- add_index("ci_builds", ["token"], {:name=>"index_ci_builds_on_token", :unique=>true, :using=>:btree})163 -> 0.0100s164-- create_table("ci_commits", {:force=>:cascade})165 -> 0.0119s166-- add_index("ci_commits", ["gl_project_id", "sha"], {:name=>"index_ci_commits_on_gl_project_id_and_sha", :using=>:btree})167 -> 0.0087s168-- add_index("ci_commits", ["gl_project_id", "status"], {:name=>"index_ci_commits_on_gl_project_id_and_status", :using=>:btree})169 -> 0.0081s170-- add_index("ci_commits", ["gl_project_id"], {:name=>"index_ci_commits_on_gl_project_id", :using=>:btree})171 -> 0.0100s172-- add_index("ci_commits", ["status"], {:name=>"index_ci_commits_on_status", :using=>:btree})173 -> 0.0088s174-- add_index("ci_commits", ["user_id"], {:name=>"index_ci_commits_on_user_id", :using=>:btree})175 -> 0.0076s176-- create_table("ci_events", {:force=>:cascade})177 -> 0.0105s178-- create_table("ci_jobs", {:force=>:cascade})179 -> 0.0109s180-- create_table("ci_projects", {:force=>:cascade})181 -> 0.0139s182-- create_table("ci_runner_projects", {:force=>:cascade})183 -> 0.0105s184-- add_index("ci_runner_projects", ["gl_project_id"], {:name=>"index_ci_runner_projects_on_gl_project_id", :using=>:btree})185 -> 0.0085s186-- add_index("ci_runner_projects", ["runner_id"], {:name=>"index_ci_runner_projects_on_runner_id", :using=>:btree})187 -> 0.0074s188-- create_table("ci_runners", {:force=>:cascade})189 -> 0.0106s190-- add_index("ci_runners", ["locked"], {:name=>"index_ci_runners_on_locked", :using=>:btree})191 -> 0.0068s192-- add_index("ci_runners", ["token"], {:name=>"index_ci_runners_on_token", :using=>:btree})193 -> 0.0066s194-- create_table("ci_sessions", {:force=>:cascade})195 -> 0.0092s196-- create_table("ci_taggings", {:force=>:cascade})197 -> 0.0090s198-- add_index("ci_taggings", ["taggable_id", "taggable_type", "context"], {:name=>"index_ci_taggings_on_taggable_id_and_taggable_type_and_context", :using=>:btree})199 -> 0.0078s200-- create_table("ci_tags", {:force=>:cascade})201 -> 0.0090s202-- create_table("ci_trigger_requests", {:force=>:cascade})203 -> 0.0088s204-- create_table("ci_triggers", {:force=>:cascade})205 -> 0.0090s206-- add_index("ci_triggers", ["gl_project_id"], {:name=>"index_ci_triggers_on_gl_project_id", :using=>:btree})207 -> 0.0088s208-- create_table("ci_variables", {:force=>:cascade})209 -> 0.0103s210-- add_index("ci_variables", ["gl_project_id"], {:name=>"index_ci_variables_on_gl_project_id", :using=>:btree})211 -> 0.0067s212-- create_table("deploy_keys_projects", {:force=>:cascade})213 -> 0.0092s214-- add_index("deploy_keys_projects", ["project_id"], {:name=>"index_deploy_keys_projects_on_project_id", :using=>:btree})215 -> 0.0072s216-- create_table("deployments", {:force=>:cascade})217 -> 0.0092s218-- add_index("deployments", ["project_id", "environment_id", "iid"], {:name=>"index_deployments_on_project_id_and_environment_id_and_iid", :using=>:btree})219 -> 0.0077s220-- add_index("deployments", ["project_id", "environment_id"], {:name=>"index_deployments_on_project_id_and_environment_id", :using=>:btree})221 -> 0.0073s222-- add_index("deployments", ["project_id", "iid"], {:name=>"index_deployments_on_project_id_and_iid", :unique=>true, :using=>:btree})223 -> 0.0072s224-- add_index("deployments", ["project_id"], {:name=>"index_deployments_on_project_id", :using=>:btree})225 -> 0.0098s226-- create_table("emails", {:force=>:cascade})227 -> 0.0105s228-- add_index("emails", ["email"], {:name=>"index_emails_on_email", :unique=>true, :using=>:btree})229 -> 0.0073s230-- add_index("emails", ["user_id"], {:name=>"index_emails_on_user_id", :using=>:btree})231 -> 0.0077s232-- create_table("environments", {:force=>:cascade})233 -> 0.0098s234-- add_index("environments", ["project_id", "name"], {:name=>"index_environments_on_project_id_and_name", :using=>:btree})235 -> 0.0080s236-- create_table("events", {:force=>:cascade})237 -> 0.0098s238-- add_index("events", ["action"], {:name=>"index_events_on_action", :using=>:btree})239 -> 0.0071s240-- add_index("events", ["author_id"], {:name=>"index_events_on_author_id", :using=>:btree})241 -> 0.0068s242-- add_index("events", ["created_at"], {:name=>"index_events_on_created_at", :using=>:btree})243 -> 0.0070s244-- add_index("events", ["project_id"], {:name=>"index_events_on_project_id", :using=>:btree})245 -> 0.0068s246-- add_index("events", ["target_id"], {:name=>"index_events_on_target_id", :using=>:btree})247 -> 0.0068s248-- add_index("events", ["target_type"], {:name=>"index_events_on_target_type", :using=>:btree})249 -> 0.0070s250-- create_table("forked_project_links", {:force=>:cascade})251 -> 0.0092s252-- add_index("forked_project_links", ["forked_to_project_id"], {:name=>"index_forked_project_links_on_forked_to_project_id", :unique=>true, :using=>:btree})253 -> 0.0078s254-- create_table("identities", {:force=>:cascade})255 -> 0.0102s256-- add_index("identities", ["user_id"], {:name=>"index_identities_on_user_id", :using=>:btree})257 -> 0.0074s258-- create_table("issue_metrics", {:force=>:cascade})259 -> 0.0093s260-- add_index("issue_metrics", ["issue_id"], {:name=>"index_issue_metrics", :using=>:btree})261 -> 0.0076s262-- create_table("issues", {:force=>:cascade})263 -> 0.0113s264-- add_index("issues", ["assignee_id"], {:name=>"index_issues_on_assignee_id", :using=>:btree})265 -> 0.0080s266-- add_index("issues", ["author_id"], {:name=>"index_issues_on_author_id", :using=>:btree})267 -> 0.0070s268-- add_index("issues", ["confidential"], {:name=>"index_issues_on_confidential", :using=>:btree})269 -> 0.0107s270-- add_index("issues", ["created_at"], {:name=>"index_issues_on_created_at", :using=>:btree})271 -> 0.0084s272-- add_index("issues", ["deleted_at"], {:name=>"index_issues_on_deleted_at", :using=>:btree})273 -> 0.0120s274-- add_index("issues", ["description"], {:name=>"index_issues_on_description_trigram", :using=>:gin, :opclasses=>{"description"=>"gin_trgm_ops"}})275 -> 0.0001s276-- add_index("issues", ["due_date"], {:name=>"index_issues_on_due_date", :using=>:btree})277 -> 0.0155s278-- add_index("issues", ["milestone_id"], {:name=>"index_issues_on_milestone_id", :using=>:btree})279 -> 0.0090s280-- add_index("issues", ["project_id", "iid"], {:name=>"index_issues_on_project_id_and_iid", :unique=>true, :using=>:btree})281 -> 0.0081s282-- add_index("issues", ["state"], {:name=>"index_issues_on_state", :using=>:btree})283 -> 0.0071s284-- add_index("issues", ["title"], {:name=>"index_issues_on_title_trigram", :using=>:gin, :opclasses=>{"title"=>"gin_trgm_ops"}})285 -> 0.0000s286-- create_table("keys", {:force=>:cascade})287 -> 0.0120s288-- add_index("keys", ["fingerprint"], {:name=>"index_keys_on_fingerprint", :unique=>true, :using=>:btree})289 -> 0.0182s290-- add_index("keys", ["user_id"], {:name=>"index_keys_on_user_id", :using=>:btree})291 -> 0.0093s292-- create_table("label_links", {:force=>:cascade})293 -> 0.0170s294-- add_index("label_links", ["label_id"], {:name=>"index_label_links_on_label_id", :using=>:btree})295 -> 0.0095s296-- add_index("label_links", ["target_id", "target_type"], {:name=>"index_label_links_on_target_id_and_target_type", :using=>:btree})297 -> 0.0090s298-- create_table("labels", {:force=>:cascade})299 -> 0.0101s300-- add_index("labels", ["priority"], {:name=>"index_labels_on_priority", :using=>:btree})301 -> 0.0084s302-- add_index("labels", ["project_id"], {:name=>"index_labels_on_project_id", :using=>:btree})303 -> 0.0075s304-- add_index("labels", ["title"], {:name=>"index_labels_on_title", :using=>:btree})305 -> 0.0090s306-- create_table("lfs_objects", {:force=>:cascade})307 -> 0.0107s308-- add_index("lfs_objects", ["oid"], {:name=>"index_lfs_objects_on_oid", :unique=>true, :using=>:btree})309 -> 0.0085s310-- create_table("lfs_objects_projects", {:force=>:cascade})311 -> 0.0099s312-- add_index("lfs_objects_projects", ["project_id"], {:name=>"index_lfs_objects_projects_on_project_id", :using=>:btree})313 -> 0.0073s314-- create_table("lists", {:force=>:cascade})315 -> 0.0096s316-- add_index("lists", ["board_id", "label_id"], {:name=>"index_lists_on_board_id_and_label_id", :unique=>true, :using=>:btree})317 -> 0.0100s318-- add_index("lists", ["board_id"], {:name=>"index_lists_on_board_id", :using=>:btree})319 -> 0.0096s320-- add_index("lists", ["label_id"], {:name=>"index_lists_on_label_id", :using=>:btree})321 -> 0.0073s322-- create_table("members", {:force=>:cascade})323 -> 0.0107s324-- add_index("members", ["access_level"], {:name=>"index_members_on_access_level", :using=>:btree})325 -> 0.0106s326-- add_index("members", ["invite_token"], {:name=>"index_members_on_invite_token", :unique=>true, :using=>:btree})327 -> 0.0241s328-- add_index("members", ["requested_at"], {:name=>"index_members_on_requested_at", :using=>:btree})329 -> 0.0095s330-- add_index("members", ["source_id", "source_type"], {:name=>"index_members_on_source_id_and_source_type", :using=>:btree})331 -> 0.0105s332-- add_index("members", ["user_id"], {:name=>"index_members_on_user_id", :using=>:btree})333 -> 0.0096s334-- create_table("merge_request_diffs", {:force=>:cascade})335 -> 0.0133s336-- add_index("merge_request_diffs", ["merge_request_id"], {:name=>"index_merge_request_diffs_on_merge_request_id", :using=>:btree})337 -> 0.0095s338-- create_table("merge_request_metrics", {:force=>:cascade})339 -> 0.0107s340-- add_index("merge_request_metrics", ["first_deployed_to_production_at"], {:name=>"index_merge_request_metrics_on_first_deployed_to_production_at", :using=>:btree})341 -> 0.0082s342-- add_index("merge_request_metrics", ["merge_request_id"], {:name=>"index_merge_request_metrics", :using=>:btree})343 -> 0.0069s344-- create_table("merge_requests", {:force=>:cascade})345 -> 0.0117s346-- add_index("merge_requests", ["assignee_id"], {:name=>"index_merge_requests_on_assignee_id", :using=>:btree})347 -> 0.0091s348-- add_index("merge_requests", ["author_id"], {:name=>"index_merge_requests_on_author_id", :using=>:btree})349 -> 0.0099s350-- add_index("merge_requests", ["created_at"], {:name=>"index_merge_requests_on_created_at", :using=>:btree})351 -> 0.0077s352-- add_index("merge_requests", ["deleted_at"], {:name=>"index_merge_requests_on_deleted_at", :using=>:btree})353 -> 0.0070s354-- add_index("merge_requests", ["description"], {:name=>"index_merge_requests_on_description_trigram", :using=>:gin, :opclasses=>{"description"=>"gin_trgm_ops"}})355 -> 0.0000s356-- add_index("merge_requests", ["milestone_id"], {:name=>"index_merge_requests_on_milestone_id", :using=>:btree})357 -> 0.0067s358-- add_index("merge_requests", ["source_branch"], {:name=>"index_merge_requests_on_source_branch", :using=>:btree})359 -> 0.0068s360-- add_index("merge_requests", ["source_project_id"], {:name=>"index_merge_requests_on_source_project_id", :using=>:btree})361 -> 0.0066s362-- add_index("merge_requests", ["target_branch"], {:name=>"index_merge_requests_on_target_branch", :using=>:btree})363 -> 0.0067s364-- add_index("merge_requests", ["target_project_id", "iid"], {:name=>"index_merge_requests_on_target_project_id_and_iid", :unique=>true, :using=>:btree})365 -> 0.0066s366-- add_index("merge_requests", ["title"], {:name=>"index_merge_requests_on_title", :using=>:btree})367 -> 0.0066s368-- add_index("merge_requests", ["title"], {:name=>"index_merge_requests_on_title_trigram", :using=>:gin, :opclasses=>{"title"=>"gin_trgm_ops"}})369 -> 0.0000s370-- create_table("merge_requests_closing_issues", {:force=>:cascade})371 -> 0.0088s372-- add_index("merge_requests_closing_issues", ["issue_id"], {:name=>"index_merge_requests_closing_issues_on_issue_id", :using=>:btree})373 -> 0.0069s374-- add_index("merge_requests_closing_issues", ["merge_request_id"], {:name=>"index_merge_requests_closing_issues_on_merge_request_id", :using=>:btree})375 -> 0.0063s376-- create_table("milestones", {:force=>:cascade})377 -> 0.0089s378-- add_index("milestones", ["description"], {:name=>"index_milestones_on_description_trigram", :using=>:gin, :opclasses=>{"description"=>"gin_trgm_ops"}})379 -> 0.0000s380-- add_index("milestones", ["due_date"], {:name=>"index_milestones_on_due_date", :using=>:btree})381 -> 0.0066s382-- add_index("milestones", ["project_id", "iid"], {:name=>"index_milestones_on_project_id_and_iid", :unique=>true, :using=>:btree})383 -> 0.0062s384-- add_index("milestones", ["project_id"], {:name=>"index_milestones_on_project_id", :using=>:btree})385 -> 0.0066s386-- add_index("milestones", ["title"], {:name=>"index_milestones_on_title", :using=>:btree})387 -> 0.0065s388-- add_index("milestones", ["title"], {:name=>"index_milestones_on_title_trigram", :using=>:gin, :opclasses=>{"title"=>"gin_trgm_ops"}})389 -> 0.0000s390-- create_table("namespaces", {:force=>:cascade})391 -> 0.0092s392-- add_index("namespaces", ["created_at"], {:name=>"index_namespaces_on_created_at", :using=>:btree})393 -> 0.0069s394-- add_index("namespaces", ["deleted_at"], {:name=>"index_namespaces_on_deleted_at", :using=>:btree})395 -> 0.0068s396-- add_index("namespaces", ["name"], {:name=>"index_namespaces_on_name", :unique=>true, :using=>:btree})397 -> 0.0065s398-- add_index("namespaces", ["name"], {:name=>"index_namespaces_on_name_trigram", :using=>:gin, :opclasses=>{"name"=>"gin_trgm_ops"}})399 -> 0.0000s400-- add_index("namespaces", ["owner_id"], {:name=>"index_namespaces_on_owner_id", :using=>:btree})401 -> 0.0066s402-- add_index("namespaces", ["path"], {:name=>"index_namespaces_on_path", :unique=>true, :using=>:btree})403 -> 0.0063s404-- add_index("namespaces", ["path"], {:name=>"index_namespaces_on_path_trigram", :using=>:gin, :opclasses=>{"path"=>"gin_trgm_ops"}})405 -> 0.0000s406-- add_index("namespaces", ["type"], {:name=>"index_namespaces_on_type", :using=>:btree})407 -> 0.0063s408-- create_table("notes", {:force=>:cascade})409 -> 0.0092s410-- add_index("notes", ["author_id"], {:name=>"index_notes_on_author_id", :using=>:btree})411 -> 0.0071s412-- add_index("notes", ["commit_id"], {:name=>"index_notes_on_commit_id", :using=>:btree})413 -> 0.0067s414-- add_index("notes", ["created_at"], {:name=>"index_notes_on_created_at", :using=>:btree})415 -> 0.0068s416-- add_index("notes", ["discussion_id"], {:name=>"index_notes_on_discussion_id", :using=>:btree})417 -> 0.0078s418-- add_index("notes", ["line_code"], {:name=>"index_notes_on_line_code", :using=>:btree})419 -> 0.0070s420-- add_index("notes", ["note"], {:name=>"index_notes_on_note_trigram", :using=>:gin, :opclasses=>{"note"=>"gin_trgm_ops"}})421 -> 0.0000s422-- add_index("notes", ["noteable_id", "noteable_type"], {:name=>"index_notes_on_noteable_id_and_noteable_type", :using=>:btree})423 -> 0.0078s424-- add_index("notes", ["noteable_type"], {:name=>"index_notes_on_noteable_type", :using=>:btree})425 -> 0.0090s426-- add_index("notes", ["project_id", "noteable_type"], {:name=>"index_notes_on_project_id_and_noteable_type", :using=>:btree})427 -> 0.0076s428-- add_index("notes", ["project_id"], {:name=>"index_notes_on_project_id", :using=>:btree})429 -> 0.0075s430-- add_index("notes", ["updated_at"], {:name=>"index_notes_on_updated_at", :using=>:btree})431 -> 0.0088s432-- create_table("notification_settings", {:force=>:cascade})433 -> 0.0103s434-- add_index("notification_settings", ["source_id", "source_type"], {:name=>"index_notification_settings_on_source_id_and_source_type", :using=>:btree})435 -> 0.0079s436-- add_index("notification_settings", ["user_id", "source_id", "source_type"], {:name=>"index_notifications_on_user_id_and_source_id_and_source_type", :unique=>true, :using=>:btree})437 -> 0.0074s438-- add_index("notification_settings", ["user_id"], {:name=>"index_notification_settings_on_user_id", :using=>:btree})439 -> 0.0076s440-- create_table("oauth_access_grants", {:force=>:cascade})441 -> 0.0118s442-- add_index("oauth_access_grants", ["token"], {:name=>"index_oauth_access_grants_on_token", :unique=>true, :using=>:btree})443 -> 0.0079s444-- create_table("oauth_access_tokens", {:force=>:cascade})445 -> 0.0108s446-- add_index("oauth_access_tokens", ["refresh_token"], {:name=>"index_oauth_access_tokens_on_refresh_token", :unique=>true, :using=>:btree})447 -> 0.0074s448-- add_index("oauth_access_tokens", ["resource_owner_id"], {:name=>"index_oauth_access_tokens_on_resource_owner_id", :using=>:btree})449 -> 0.0072s450-- add_index("oauth_access_tokens", ["token"], {:name=>"index_oauth_access_tokens_on_token", :unique=>true, :using=>:btree})451 -> 0.0078s452-- create_table("oauth_applications", {:force=>:cascade})453 -> 0.0100s454-- add_index("oauth_applications", ["owner_id", "owner_type"], {:name=>"index_oauth_applications_on_owner_id_and_owner_type", :using=>:btree})455 -> 0.0077s456-- add_index("oauth_applications", ["uid"], {:name=>"index_oauth_applications_on_uid", :unique=>true, :using=>:btree})457 -> 0.0071s458-- create_table("personal_access_tokens", {:force=>:cascade})459 -> 0.0100s460-- add_index("personal_access_tokens", ["token"], {:name=>"index_personal_access_tokens_on_token", :unique=>true, :using=>:btree})461 -> 0.0084s462-- add_index("personal_access_tokens", ["user_id"], {:name=>"index_personal_access_tokens_on_user_id", :using=>:btree})463 -> 0.0079s464-- create_table("project_features", {:force=>:cascade})465 -> 0.0108s466-- add_index("project_features", ["project_id"], {:name=>"index_project_features_on_project_id", :using=>:btree})467 -> 0.0132s468-- create_table("project_group_links", {:force=>:cascade})469 -> 0.0139s470-- create_table("project_import_data", {:force=>:cascade})471 -> 0.0116s472-- create_table("projects", {:force=>:cascade})473 -> 0.0134s474-- add_index("projects", ["ci_id"], {:name=>"index_projects_on_ci_id", :using=>:btree})475 -> 0.0080s476-- add_index("projects", ["created_at"], {:name=>"index_projects_on_created_at", :using=>:btree})477 -> 0.0076s478-- add_index("projects", ["creator_id"], {:name=>"index_projects_on_creator_id", :using=>:btree})479 -> 0.0079s480-- add_index("projects", ["description"], {:name=>"index_projects_on_description_trigram", :using=>:gin, :opclasses=>{"description"=>"gin_trgm_ops"}})481 -> 0.0000s482-- add_index("projects", ["last_activity_at"], {:name=>"index_projects_on_last_activity_at", :using=>:btree})483 -> 0.0104s484-- add_index("projects", ["last_repository_check_failed"], {:name=>"index_projects_on_last_repository_check_failed", :using=>:btree})485 -> 0.0087s486-- add_index("projects", ["name"], {:name=>"index_projects_on_name_trigram", :using=>:gin, :opclasses=>{"name"=>"gin_trgm_ops"}})487 -> 0.0000s488-- add_index("projects", ["namespace_id"], {:name=>"index_projects_on_namespace_id", :using=>:btree})489 -> 0.0088s490-- add_index("projects", ["path"], {:name=>"index_projects_on_path", :using=>:btree})491 -> 0.0099s492-- add_index("projects", ["path"], {:name=>"index_projects_on_path_trigram", :using=>:gin, :opclasses=>{"path"=>"gin_trgm_ops"}})493 -> 0.0000s494-- add_index("projects", ["pending_delete"], {:name=>"index_projects_on_pending_delete", :using=>:btree})495 -> 0.0094s496-- add_index("projects", ["runners_token"], {:name=>"index_projects_on_runners_token", :using=>:btree})497 -> 0.0087s498-- add_index("projects", ["star_count"], {:name=>"index_projects_on_star_count", :using=>:btree})499 -> 0.0086s500-- add_index("projects", ["visibility_level"], {:name=>"index_projects_on_visibility_level", :using=>:btree})501 -> 0.0097s502-- create_table("protected_branch_merge_access_levels", {:force=>:cascade})503 -> 0.0129s504-- add_index("protected_branch_merge_access_levels", ["protected_branch_id"], {:name=>"index_protected_branch_merge_access", :using=>:btree})505 -> 0.0086s506-- create_table("protected_branch_push_access_levels", {:force=>:cascade})507 -> 0.0105s508-- add_index("protected_branch_push_access_levels", ["protected_branch_id"], {:name=>"index_protected_branch_push_access", :using=>:btree})509 -> 0.0097s510-- create_table("protected_branches", {:force=>:cascade})511 -> 0.0106s512-- add_index("protected_branches", ["project_id"], {:name=>"index_protected_branches_on_project_id", :using=>:btree})513 -> 0.0074s514-- create_table("releases", {:force=>:cascade})515 -> 0.0099s516-- add_index("releases", ["project_id", "tag"], {:name=>"index_releases_on_project_id_and_tag", :using=>:btree})517 -> 0.0077s518-- add_index("releases", ["project_id"], {:name=>"index_releases_on_project_id", :using=>:btree})519 -> 0.0074s520-- create_table("sent_notifications", {:force=>:cascade})521 -> 0.0100s522-- add_index("sent_notifications", ["reply_key"], {:name=>"index_sent_notifications_on_reply_key", :unique=>true, :using=>:btree})523 -> 0.0076s524-- create_table("services", {:force=>:cascade})525 -> 0.0146s526-- add_index("services", ["project_id"], {:name=>"index_services_on_project_id", :using=>:btree})527 -> 0.0101s528-- add_index("services", ["template"], {:name=>"index_services_on_template", :using=>:btree})529 -> 0.0090s530-- create_table("snippets", {:force=>:cascade})531 -> 0.0109s532-- add_index("snippets", ["author_id"], {:name=>"index_snippets_on_author_id", :using=>:btree})533 -> 0.0079s534-- add_index("snippets", ["file_name"], {:name=>"index_snippets_on_file_name_trigram", :using=>:gin, :opclasses=>{"file_name"=>"gin_trgm_ops"}})535 -> 0.0000s536-- add_index("snippets", ["project_id"], {:name=>"index_snippets_on_project_id", :using=>:btree})537 -> 0.0072s538-- add_index("snippets", ["title"], {:name=>"index_snippets_on_title_trigram", :using=>:gin, :opclasses=>{"title"=>"gin_trgm_ops"}})539 -> 0.0000s540-- add_index("snippets", ["updated_at"], {:name=>"index_snippets_on_updated_at", :using=>:btree})541 -> 0.0078s542-- add_index("snippets", ["visibility_level"], {:name=>"index_snippets_on_visibility_level", :using=>:btree})543 -> 0.0074s544-- create_table("spam_logs", {:force=>:cascade})545 -> 0.0103s546-- create_table("subscriptions", {:force=>:cascade})547 -> 0.0104s548-- add_index("subscriptions", ["subscribable_id", "subscribable_type", "user_id"], {:name=>"subscriptions_user_id_and_ref_fields", :unique=>true, :using=>:btree})549 -> 0.0074s550-- create_table("taggings", {:force=>:cascade})551 -> 0.0099s552-- add_index("taggings", ["tag_id", "taggable_id", "taggable_type", "context", "tagger_id", "tagger_type"], {:name=>"taggings_idx", :unique=>true, :using=>:btree})553 -> 0.0086s554-- add_index("taggings", ["taggable_id", "taggable_type", "context"], {:name=>"index_taggings_on_taggable_id_and_taggable_type_and_context", :using=>:btree})555 -> 0.0071s556-- create_table("tags", {:force=>:cascade})557 -> 0.0114s558-- add_index("tags", ["name"], {:name=>"index_tags_on_name", :unique=>true, :using=>:btree})559 -> 0.0075s560-- create_table("todos", {:force=>:cascade})561 -> 0.0115s562-- add_index("todos", ["author_id"], {:name=>"index_todos_on_author_id", :using=>:btree})563 -> 0.0077s564-- add_index("todos", ["commit_id"], {:name=>"index_todos_on_commit_id", :using=>:btree})565 -> 0.0078s566-- add_index("todos", ["note_id"], {:name=>"index_todos_on_note_id", :using=>:btree})567 -> 0.0074s568-- add_index("todos", ["project_id"], {:name=>"index_todos_on_project_id", :using=>:btree})569 -> 0.0073s570-- add_index("todos", ["target_type", "target_id"], {:name=>"index_todos_on_target_type_and_target_id", :using=>:btree})571 -> 0.0073s572-- add_index("todos", ["user_id"], {:name=>"index_todos_on_user_id", :using=>:btree})573 -> 0.0075s574-- create_table("u2f_registrations", {:force=>:cascade})575 -> 0.0094s576-- add_index("u2f_registrations", ["key_handle"], {:name=>"index_u2f_registrations_on_key_handle", :using=>:btree})577 -> 0.0092s578-- add_index("u2f_registrations", ["user_id"], {:name=>"index_u2f_registrations_on_user_id", :using=>:btree})579 -> 0.0074s580-- create_table("user_agent_details", {:force=>:cascade})581 -> 0.0100s582-- create_table("users", {:force=>:cascade})583 -> 0.0130s584-- add_index("users", ["admin"], {:name=>"index_users_on_admin", :using=>:btree})585 -> 0.0080s586-- add_index("users", ["authentication_token"], {:name=>"index_users_on_authentication_token", :unique=>true, :using=>:btree})587 -> 0.0068s588-- add_index("users", ["confirmation_token"], {:name=>"index_users_on_confirmation_token", :unique=>true, :using=>:btree})589 -> 0.0076s590-- add_index("users", ["created_at"], {:name=>"index_users_on_created_at", :using=>:btree})591 -> 0.0075s592-- add_index("users", ["current_sign_in_at"], {:name=>"index_users_on_current_sign_in_at", :using=>:btree})593 -> 0.0074s594-- add_index("users", ["email"], {:name=>"index_users_on_email", :unique=>true, :using=>:btree})595 -> 0.0073s596-- add_index("users", ["email"], {:name=>"index_users_on_email_trigram", :using=>:gin, :opclasses=>{"email"=>"gin_trgm_ops"}})597 -> 0.0000s598-- add_index("users", ["name"], {:name=>"index_users_on_name", :using=>:btree})599 -> 0.0075s600-- add_index("users", ["name"], {:name=>"index_users_on_name_trigram", :using=>:gin, :opclasses=>{"name"=>"gin_trgm_ops"}})601 -> 0.0000s602-- add_index("users", ["reset_password_token"], {:name=>"index_users_on_reset_password_token", :unique=>true, :using=>:btree})603 -> 0.0073s604-- add_index("users", ["state"], {:name=>"index_users_on_state", :using=>:btree})605 -> 0.0075s606-- add_index("users", ["username"], {:name=>"index_users_on_username", :using=>:btree})607 -> 0.0072s608-- add_index("users", ["username"], {:name=>"index_users_on_username_trigram", :using=>:gin, :opclasses=>{"username"=>"gin_trgm_ops"}})609 -> 0.0000s610-- create_table("users_star_projects", {:force=>:cascade})611 -> 0.0089s612-- add_index("users_star_projects", ["project_id"], {:name=>"index_users_star_projects_on_project_id", :using=>:btree})613 -> 0.0069s614-- add_index("users_star_projects", ["user_id", "project_id"], {:name=>"index_users_star_projects_on_user_id_and_project_id", :unique=>true, :using=>:btree})615 -> 0.0064s616-- add_index("users_star_projects", ["user_id"], {:name=>"index_users_star_projects_on_user_id", :using=>:btree})617 -> 0.0065s618-- create_table("web_hooks", {:force=>:cascade})619 -> 0.0103s620-- add_index("web_hooks", ["project_id"], {:name=>"index_web_hooks_on_project_id", :using=>:btree})621 -> 0.0070s622-- add_foreign_key("boards", "projects")623 -> 0.0181s624-- add_foreign_key("issue_metrics", "issues", {:on_delete=>:cascade})625 -> 0.0160s626-- add_foreign_key("lists", "boards")627 -> 0.0225s628-- add_foreign_key("lists", "labels")629 -> 0.0238s630-- add_foreign_key("merge_request_metrics", "merge_requests", {:on_delete=>:cascade})631 -> 0.0203s632-- add_foreign_key("merge_requests_closing_issues", "issues", {:on_delete=>:cascade})633 -> 0.0200s634-- add_foreign_key("merge_requests_closing_issues", "merge_requests", {:on_delete=>:cascade})635 -> 0.0189s636-- add_foreign_key("personal_access_tokens", "users")637 -> 0.0203s638-- add_foreign_key("protected_branch_merge_access_levels", "protected_branches")639 -> 0.0174s640-- add_foreign_key("protected_branch_push_access_levels", "protected_branches")641 -> 0.0173s642-- add_foreign_key("u2f_registrations", "users")643 -> 0.0218s644-- initialize_schema_migrations_table()645 -> 0.0454s646$ bundle exec rake assets:precompile 2>/dev/null647$ JOB_NAME=( $CI_BUILD_NAME )648$ export CI_NODE_INDEX=${JOB_NAME[1]}649$ export CI_NODE_TOTAL=${JOB_NAME[2]}650$ export KNAPSACK_REPORT_PATH=knapsack/rspec_node_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json651$ export KNAPSACK_GENERATE_REPORT=true652$ cp knapsack/rspec_report.json ${KNAPSACK_REPORT_PATH}653$ knapsack rspec "--color --format documentation"654Report specs:655Leftover specs:656spec/controllers/groups/milestones_controller_spec.rb657spec/controllers/projects/blob_controller_spec.rb658spec/controllers/projects/protected_branches_controller_spec.rb659spec/features/admin/admin_abuse_reports_spec.rb660spec/features/compare_spec.rb661spec/features/issues/award_spec.rb662spec/features/merge_requests/created_from_fork_spec.rb663spec/features/profiles/password_spec.rb664spec/features/projects/files/project_owner_creates_license_file_spec.rb665spec/features/projects/members/owner_cannot_request_access_to_his_project_spec.rb666spec/features/security/group/internal_access_spec.rb667spec/features/todos/todos_spec.rb668spec/finders/snippets_finder_spec.rb669spec/helpers/import_helper_spec.rb670spec/initializers/6_validations_spec.rb671spec/lib/banzai/filter/redactor_filter_spec.rb672spec/lib/banzai/reference_parser/base_parser_spec.rb673spec/lib/extracts_path_spec.rb674spec/lib/gitlab/ci/build/artifacts/metadata_spec.rb675spec/lib/gitlab/ci/config/node/stages_spec.rb676spec/lib/gitlab/database_spec.rb677spec/lib/gitlab/gfm/reference_rewriter_spec.rb678spec/lib/gitlab/google_code_import/client_spec.rb679spec/lib/gitlab/ldap/access_spec.rb680spec/lib/gitlab/metrics_spec.rb681spec/lib/gitlab/sherlock/transaction_spec.rb682spec/lib/json_web_token/token_spec.rb683spec/models/ci/trigger_spec.rb684spec/models/cycle_analytics/code_spec.rb685spec/models/group_spec.rb686spec/models/namespace_spec.rb687spec/models/project_services/gitlab_issue_tracker_service_spec.rb688spec/models/protected_branch_spec.rb689spec/requests/api/deploy_keys_spec.rb690spec/requests/api/oauth_tokens_spec.rb691spec/requests/ci/api/triggers_spec.rb692spec/services/ci/process_pipeline_service_spec.rb693spec/services/issues/move_service_spec.rb694spec/services/notes/create_service_spec.rb695spec/services/repair_ldap_blocked_user_service_spec.rb696spec/views/projects/issues/_related_branches.html.haml_spec.rb697spec/workers/remove_expired_members_worker_spec.rb698WARNING: This version of GitLab depends on gitlab-shell 3.6.2, but you're running Unknown. Please update gitlab-shell.699Knapsack report generator started!700WARNING: This version of GitLab depends on gitlab-shell 3.6.2, but you're running Unknown. Please update gitlab-shell.701Cloning into 'tmp/tests/gitlab-shell'...702Groups::MilestonesController703 #create704 creates group milestone with Chinese title705 redirects to new when there are no project ids706Projects::BlobController707 GET diff708 when essential params are missing709 renders nothing710 when essential params are present711 renders the diff content712Projects::ProtectedBranchesController713 GET #index714 redirects empty repo to projects page715Admin::AbuseReports716 as an admin717 if a user has been reported for abuse718 in the abuse report view719 presents a link to the user's profile720 in the profile page of the user721 shows a link to the admin view of the user722Compare723 branches724 pre-populates fields725 compares branches726 tags727 compares tags728Issue awards729 logged in730 adds award to issue731 removes award from issue732 only has one menu on the page733 logged out734 does not see award menu button735Merge request created from fork736 user can access merge request737 pipeline present in source project738 user visits a pipelines page739Profile > Password740 User with password automatically set741 User puts different passwords in the field and in the confirmation742 shows an error message743 does not contains the current password field after an error744 User puts the same passwords in the field and in the confirmation745 shows a success message746project owner creates a license file747Automatically scrolling cursor into view after selection change this will be disabled in the next version set editor.$blockScrolling = Infinity to disable this message748 project master creates a license file manually from a template749Automatically scrolling cursor into view after selection change this will be disabled in the next version set editor.$blockScrolling = Infinity to disable this message750 project master creates a license file from the "Add license" link751Projects > Members > Owner cannot request access to his project752 owner does not see the request access button753Internal Group access754 Group should be internal755 #internal?756 should be truthy757 GET /groups/:path758 should be allowed for admin759 should be allowed for the specified user760 should be allowed for the specified user761 should be allowed for the specified user762 should be allowed for the specified user763 should be allowed for the specified user764 should be allowed for the specified user765 should be allowed for user766 should be denied for external767 should be denied for visitor768 GET /groups/:path/issues769 should be allowed for admin770 should be allowed for the specified user771 should be allowed for the specified user772 should be allowed for the specified user773 should be allowed for the specified user774 should be allowed for the specified user775 should be allowed for the specified user776 should be allowed for user777 should be denied for external778 should be denied for visitor779 GET /groups/:path/merge_requests780 should be allowed for admin781 should be allowed for the specified user782 should be allowed for the specified user783 should be allowed for the specified user784 should be allowed for the specified user785 should be allowed for the specified user786 should be allowed for the specified user787 should be allowed for user788 should be denied for external789 should be denied for visitor790 GET /groups/:path/group_members791 should be allowed for admin792 should be allowed for the specified user793 should be allowed for the specified user794 should be allowed for the specified user795 should be allowed for the specified user796 should be allowed for the specified user797 should be allowed for the specified user798 should be allowed for user799 should be denied for external800 should be denied for visitor801 GET /groups/:path/edit802 should be allowed for admin803 should be allowed for the specified user804 should be denied for the specified user805 should be denied for the specified user806 should be denied for the specified user807 should be denied for the specified user808 should be denied for the specified user809 should be denied for user810 should be denied for visitor811 should be denied for external812Dashboard Todos813 GET /dashboard/todos814 User does not have todos815 shows "All done" message816 User has a todo817 has todo present818 deleting the todo819 is removed from the list820 shows "All done" message821 todo is stale on the page822 deleting the todo823 is removed from the list824 shows "All done" message825 User has Todos with labels spanning multiple projects826 shows page with two Todos827 User has multiple pages of Todos828 is paginated829 is has the right number of pages830 completing last todo from last page831 redirects to the previous page832 mark all as done833 shows "All done" message!834 User has a Todo in a project pending deletion835 shows "All done" message836SnippetsFinder837 :all filter838 returns all private and internal snippets839 returns all public snippets840 :by_user filter841 returns all public and internal snippets842 returns internal snippets843 returns private snippets844 returns public snippets845 returns all snippets846 returns only public snippets if unauthenticated user847 by_project filter848 returns public snippets for unauthorized user849 returns public and internal snippets for none project members850 returns all snippets for project members851ImportHelper852 #import_project_target853 when current user can create namespaces854 returns project namespace855 when current user can not create namespaces856 takes the current user's namespace857 #github_project_link858 when provider does not specify a custom URL859 uses default GitHub URL860 when provider specify a custom URL861 uses custom URL8626_validations863 with correct settings864 passes through865 with invalid storage names866 throws an error867 with nested storage paths868 throws an error869 with similar but un-nested storage paths870 passes through871Banzai::Filter::RedactorFilter872 ignores non-GFM links873 with data-project874 removes unpermitted Project references875 allows permitted Project references876 handles invalid Project references877 with data-issue878 allows references for non confidential issues879 for confidential issues880 removes references for non project members881 removes references for project members with guest role882 allows references for author883 allows references for assignee884 allows references for project members885 allows references for admin886 for user references887 with data-group888 removes unpermitted Group references889 allows permitted Group references890 handles invalid Group references891 with data-user892 allows any User reference893Banzai::ReferenceParser::BaseParser894 .reference_type=895 sets the reference type896 #nodes_visible_to_user897 when the link has a data-project attribute898 returns the nodes if the attribute value equals the current project ID899 returns the nodes if the user can read the project900 returns an empty Array when the attribute value is empty901 returns an empty Array when the user can not read the project902 when the link does not have a data-project attribute903 returns the nodes904 #nodes_user_can_reference905 returns the nodes906 #referenced_by907 when references_relation is implemented908 returns a collection of objects909 when references_relation is not implemented910 raises NotImplementedError911 #references_relation912 raises NotImplementedError913 #gather_attributes_per_project914 returns a Hash containing attribute values per project915 #grouped_objects_for_nodes916 returns a Hash grouping objects per ID917 returns an empty Hash when the list of nodes is empty918 #unique_attribute_values919 returns an Array of unique values920 #process921 gathers the references for every node matching the reference type922 #gather_references923 does not process links a user can not reference924 does not process links a user can not see925 returns the references if a user can reference and see a link926 #can?927 delegates the permissions check to the Ability class928 #find_projects_for_hash_keys929 returns a list of Projects930 #collection_objects_for_ids931 with RequestStore disabled932 queries the collection directly933 with RequestStore enabled934 queries the collection on the first call935 does not query previously queried objects936 casts String based IDs to Fixnums before querying objects937 queries any additional objects after the first call938 caches objects on a per collection class basis939 #collection_cache_key940 returns the cache key for a Class941 returns the cache key for an ActiveRecord::Relation942ExtractsPath943 #assign_ref944 log tree path has no escape sequences945 ref contains %20946 is not converted to a space in @id947 path contains space948 is not converted to %20 in @path949 subclass overrides get_id950 uses ref returned by get_id951 #extract_ref952 returns an empty pair when no @project is set953 without a path954 extracts a valid branch955 extracts a valid tag956 extracts a valid commit ref without a path957 falls back to a primitive split for an invalid ref958 extracts the longest matching ref959 with a path960 extracts a valid branch961 extracts a valid tag962 extracts a valid commit SHA963 falls back to a primitive split for an invalid ref964Gitlab::Ci::Build::Artifacts::Metadata965 metadata file exists966 #find_entries! empty string967 matches correct paths968 matches metadata for every path969 return Hashes for each metadata970 #find_entries! other_artifacts_0.1.2/971 matches correct paths972 #find_entries! other_artifacts_0.1.2/another-subdirectory/973 matches correct paths974 #find_entries! recursively for other_artifacts_0.1.2/975 matches correct paths976 #to_entry977 should be an instance of Gitlab::Ci::Build::Artifacts::Metadata::Entry978 #full_version979 should eq "GitLab Build Artifacts Metadata 0.0.1"980 #version981 should eq "0.0.1"982 #errors983 should eq {}984 metadata file does not exist985 #find_entries!986 raises error987Gitlab::Ci::Config::Node::Stages988 validations989 when entry config value is correct990 #value991 returns array of stages992 #valid?993 is valid994 when entry value is not correct995 #errors996 saves errors997 #valid?998 is not valid999 .default1000 returns default stages1001Gitlab::Database1002 .mysql?1003 should satisfy block1004 .postgresql?1005 should satisfy block1006 .version1007 on mysql1008 extracts the version number1009 on postgresql1010 extracts the version number1011 .nulls_last_order1012 when using PostgreSQL1013 should eq "column ASC NULLS LAST"1014 should eq "column DESC NULLS LAST"1015 when using MySQL1016 should eq "column IS NULL, column ASC"1017 should eq "column DESC"1018 #true_value1019 returns correct value for PostgreSQL1020 returns correct value for MySQL1021 #false_value1022 returns correct value for PostgreSQL1023 returns correct value for MySQL1024Gitlab::Gfm::ReferenceRewriter1025 #rewrite1026 multiple issues and merge requests referenced1027 plain text description1028 should include "namespace140/gitlabhq#1"1029 should include "namespace142/gitlabhq#2"1030 should include "namespace144/gitlabhq!1"1031 description with ignored elements1032 should include "namespace146/gitlabhq#1"1033 should not include "namespace148/gitlabhq#2"1034 should not include "namespace150/gitlabhq!1"1035 description ambigous elements1036 url1037 should include "http://gitlab.com/#1"1038 code1039 should eq "namespace154/gitlabhq#1, but not `[#1]`"1040 code reverse1041 should eq "not `#1`, but namespace156/gitlabhq#1"1042 code in random order1043 should eq "namespace158/gitlabhq#1, `#1`, namespace158/gitlabhq#1, `#1`"1044 description with labels1045 label referenced by id1046 should eq "namespace160/gitlabhq#1 and namespace160/gitlabhq~123"1047 label referenced by text1048 should eq "namespace162/gitlabhq#1 and namespace162/gitlabhq~123"1049 reference contains milestone1050 should eq "milestone ref: %1"1051Gitlab::GoogleCodeImport::Client1052 #valid?1053 when the data is valid1054 returns true1055 when the data is invalid1056 returns true1057 #repos1058 returns only Git repositories1059 #repo1060 returns the referenced repository1061Gitlab::LDAP::Access1062 #allowed?1063 when the user cannot be found1064 should be falsey1065 should block user in GitLab1066 when the user is found1067 and the user is disabled via active directory1068 should be falsey1069 blocks user in GitLab1070 and has no disabled flag in active diretory1071 should be truthy1072 when auto-created users are blocked1073 does not unblock user in GitLab1074 when auto-created users are not blocked1075 unblocks user in GitLab1076 without ActiveDirectory enabled1077 should be truthy1078 when user cannot be found1079 should be falsey1080 blocks user in GitLab1081 when user was previously ldap_blocked1082 unblocks the user if it exists1083Gitlab::Metrics1084 .settings1085 returns a Hash1086 .enabled?1087 returns a boolean1088 .submit_metrics1089 prepares and writes the metrics to InfluxDB1090 .prepare_metrics1091 returns a Hash with the keys as Symbols1092 escapes tag values1093 drops empty tags1094 .escape_value1095 escapes an equals sign1096 casts values to Strings1097 .measure1098 without a transaction1099 returns the return value of the block1100 with a transaction1101 adds a metric to the current transaction1102 returns the return value of the block1103 .tag_transaction1104 without a transaction1105 does nothing1106 with a transaction1107 adds the tag to the transaction1108 .action=1109 without a transaction1110 does nothing1111 with a transaction1112 sets the action of a transaction1113 #series_prefix1114 returns a String1115 .add_event1116 without a transaction1117 does nothing1118 with a transaction1119 adds an event1120Gitlab::Sherlock::Transaction1121 #id1122 returns the transaction ID1123 #type1124 returns the type1125 #path1126 returns the path1127 #queries1128 returns an Array of queries1129 #file_samples1130 returns an Array of file samples1131 #started_at1132 returns the start time1133 #finished_at1134 returns the completion time1135 #view_counts1136 returns a Hash1137 sets the default value of a key to 01138 #run1139 runs the transaction1140 #duration1141 returns the duration in seconds1142 #query_duration1143 returns the total query duration in seconds1144 #to_param1145 returns the transaction ID1146 #sorted_queries1147 returns the queries in descending order1148 #sorted_file_samples1149 returns the file samples in descending order1150 #find_query1151 returns a Query when found1152 returns nil when no query could be found1153 #find_file_sample1154 returns a FileSample when found1155 returns nil when no file sample could be found1156 #profile_lines1157 when line profiling is enabled1158 yields the block using the line profiler1159 when line profiling is disabled1160 yields the block1161 #subscribe_to_active_record1162 tracks executed queries1163 only tracks queries triggered from the transaction thread1164 #subscribe_to_action_view1165 tracks rendered views1166 only tracks views rendered from the transaction thread1167JSONWebToken::Token1168 custom parameters1169 should eq "value"1170 should include {:key => "value"}1171 embeds default payload1172 should include {:jti => "5124e17a-4a29-41ea-9ec2-82a361a727d7", :iat => 1475454530, :nbf => 1475454525, :exp => 1475454590}1173Ci::Trigger1174 before_validation1175 sets an random token if none provided1176 does not set an random token if one provided1177CycleAnalytics#code1178 start condition: issue mentioned in a commit1179 end condition: merge request that closes issue is created1180 finds the median of available durations between the two conditions1181 when the data belongs to another project1182 returns nil1183 when the end condition happens before the start condition1184 returns nil1185 start condition NOT PRESENT: issue mentioned in a commit1186 end condition: merge request that closes issue is created1187 returns nil1188 start condition: issue mentioned in a commit1189 end condition NOT PRESENT: merge request that closes issue is created1190 returns nil1191 when none of the start / end conditions are matched1192 returns nil1193 when a regular merge request (that doesn't close the issue) is created1194 returns nil1195Group1196 associations1197 should have many projects1198 should have many group_members dependent => destroy1199 should have many users through group_members1200 should have many owners through group_members1201 should have many requesters dependent => destroy1202 should have many project_group_links dependent => destroy1203 should have many shared_projects through project_group_links1204 should have many notification_settings dependent => destroy1205 #members & #requesters1206 #members1207 includes members and exclude requesters1208 #requesters1209 does not include requesters1210 modules1211 should includes the Referable module1212 validations1213 should require name to be set1214 should require case sensitive unique value for name1215 should require path to be set1216 should require case sensitive unique value for path1217 should not require owner to be set1218 .visible_to_user1219 when the user has access to a group1220 should eq [#<Group id: 449, name: "group75", path: "group75", owner_id: nil, created_at: "2016-10-03 00:30:00",...lock: false, visibility_level: 20, request_access_enabled: true, deleted_at: nil, lfs_enabled: nil>]1221 when the user does not have access to any groups1222 should eq []1223 scopes1224 public_only1225 should eq [#<Group id: 453, name: "group77", path: "group77", owner_id: nil, created_at: "2016-10-03 00:30:01",...lock: false, visibility_level: 20, request_access_enabled: true, deleted_at: nil, lfs_enabled: nil>]1226 public_and_internal_only1227 should contain exactly #<Group id: 456, name: "group80", path: "group80", owner_id: nil, created_at: "2016-10-03 00:30:01", ..._lock: false, visibility_level: 20, request_access_enabled: true, deleted_at: nil, lfs_enabled: nil> and #<Group id: 458, name: "group82", path: "group82", owner_id: nil, created_at: "2016-10-03 00:30:01", ..._lock: false, visibility_level: 10, request_access_enabled: true, deleted_at: nil, lfs_enabled: nil>1228 #to_reference1229 returns a String reference to the object1230 #users1231 should eq #<ActiveRecord::Associations::CollectionProxy []>1232 #human_name1233 should eq "group85"1234 #add_user1235 should include #<User id: 346, email: "guy@borer.com", created_at: "2016-10-03 00:30:02", updated_at: "2016-10-03 00...mit: false, otp_grace_period_started_at: nil, ldap_email: false, external: false, organization: nil>1236 #add_users1237 updates the group permission1238 #avatar_type1239 is true if avatar is image1240 is false if avatar is html page1241 .search1242 returns groups with a matching name1243 returns groups with a partially matching name1244 returns groups with a matching name regardless of the casing1245 returns groups with a matching path1246 returns groups with a partially matching path1247 returns groups with a matching path regardless of the casing1248 #has_owner?1249 should be truthy1250 should be falsey1251 should be falsey1252 should be falsey1253 should be falsey1254 should be falsey1255 #has_master?1256 should be falsey1257 should be truthy1258 should be falsey1259 should be falsey1260 should be falsey1261 should be falsey1262 #lfs_enabled?1263 LFS enabled globally1264 returns true when nothing is set1265 returns false when set to false1266 returns true when set to true1267 LFS disabled globally1268 returns false when nothing is set1269 returns false when set to false1270 returns false when set to true1271 #owners1272 returns the owners of a Group1273Namespace1274 should have many projects1275 should require name to be set1276 should require case sensitive unique value for name1277 should require path to be set1278 should require case sensitive unique value for path1279 should require owner to be set1280 Respond to1281 should respond to #human_name1282 should respond to #to_param1283 #to_param1284 should eq "namespace185"1285 #human_name1286 should eq "Fredy Waelchi"1287 .search1288 returns namespaces with a matching name1289 returns namespaces with a partially matching name1290 returns namespaces with a matching name regardless of the casing1291 returns namespaces with a matching path1292 returns namespaces with a partially matching path1293 returns namespaces with a matching path regardless of the casing1294 #move_dir1295 raises error when directory exists1296 moves dir if path changed1297 when any project has container tags1298 should raise Exception with "Namespace cannot be moved, because at least one project has tags in container registry"1299 rm_dir1300 removes its dirs when deleted1301 .find_by_path_or_name1302 should eq #<Namespace id: 623, name: "WoW", path: "woW", owner_id: 453, created_at: "2016-10-03 00:30:46", upda..._lock: false, visibility_level: 20, request_access_enabled: true, deleted_at: nil, lfs_enabled: nil>1303 should eq #<Namespace id: 627, name: "WoW", path: "woW", owner_id: 455, created_at: "2016-10-03 00:30:47", upda..._lock: false, visibility_level: 20, request_access_enabled: true, deleted_at: nil, lfs_enabled: nil>1304 should eq nil1305 .clean_path1306 cleans the path and makes sure it's available1307GitlabIssueTrackerService1308 Associations1309 should belong to project1310 should have one service_hook1311 Validations1312 when service is active1313 should require issues_url to be set1314 behaves like issue tracker service URL attribute1315 should allow issues_url to be set to "https://example.com"1316 should not allow issues_url to be set to "example.com"1317 should not allow issues_url to be set to "ftp://example.com"1318 should not allow issues_url to be set to "herp-and-derp"1319 when service is inactive1320 should not require issues_url to be set1321 project and issue urls1322 with absolute urls1323 gives the correct path1324 with relative urls1325 gives the correct path1326ProtectedBranch1327 Associations1328 should belong to project1329 Validation1330 should require project to be set1331 should require name to be set1332 #matches?1333 when the protected branch setting is not a wildcard1334 returns true for branch names that are an exact match1335 returns false for branch names that are not an exact match1336 when the protected branch name contains wildcard(s)1337 when there is a single '*'1338 returns true for branch names matching the wildcard1339 returns false for branch names not matching the wildcard1340 when the wildcard contains regex symbols other than a '*'1341 returns true for branch names matching the wildcard1342 returns false for branch names not matching the wildcard1343 when there are '*'s at either end1344 returns true for branch names matching the wildcard1345 returns false for branch names not matching the wildcard1346 when there are arbitrarily placed '*'s1347 returns true for branch names matching the wildcard1348 returns false for branch names not matching the wildcard1349 #matching1350 for direct matches1351 returns a list of protected branches matching the given branch name1352 accepts a list of protected branches to search from, so as to avoid a DB call1353 for wildcard matches1354 returns a list of protected branches matching the given branch name1355 accepts a list of protected branches to search from, so as to avoid a DB call1356API::API1357 GET /deploy_keys1358 when unauthenticated1359 should return authentication error1360 when authenticated as non-admin user1361 should return a 403 error1362 when authenticated as admin1363 should return all deploy keys1364 GET /projects/:id/deploy_keys1365 should return array of ssh keys1366 GET /projects/:id/deploy_keys/:key_id1367 should return a single key1368 should return 404 Not Found with invalid ID1369 POST /projects/:id/deploy_keys1370 should not create an invalid ssh key1371 should not create a key without title1372 should create new ssh key1373 DELETE /projects/:id/deploy_keys/:key_id1374 should delete existing key1375 should return 404 Not Found with invalid ID1376 POST /projects/:id/deploy_keys/:key_id/enable1377 when the user can admin the project1378 enables the key1379 when authenticated as non-admin user1380 should return a 404 error1381 DELETE /projects/:id/deploy_keys/:key_id/disable1382 when the user can admin the project1383 disables the key1384 when authenticated as non-admin user1385 should return a 404 error1386API::API1387 Resource Owner Password Credentials1388 when user has 2FA enabled1389 does not create an access token1390 when user does not have 2FA enabled1391 creates an access token1392Ci::API::API1393 POST /projects/:project_id/refs/:ref/trigger1394 Handles errors1395 returns bad request if token is missing1396 returns not found if project is not found1397 returns unauthorized if token is for different project1398 Have a commit1399 creates builds1400 returns bad request with no builds created if there's no commit for that ref1401 Validates variables1402 validates variables to be a hash1403 validates variables needs to be a map of key-valued strings1404 creates trigger request with variables1405Ci::ProcessPipelineService1406 #execute1407 start queuing next builds1408 processes a pipeline1409 does not process pipeline if existing stage is running1410 custom stage with first job allowed to fail1411 automatically triggers a next stage when build finishes1412 properly creates builds when "when" is defined1413 when builds are successful1414 properly creates builds1415 when test job fails1416 properly creates builds1417 when test and test_failure jobs fail1418 properly creates builds1419 when deploy job fails1420 properly creates builds1421 when build is canceled in the second stage1422 does not schedule builds after build has been canceled1423 when listing manual actions1424 returns only for skipped builds1425 when failed build in the middle stage is retried1426 when failed build is the only unsuccessful build in the stage1427 does trigger builds in the next stage1428 creates a builds from .gitlab-ci.yml1429 when processing a pipeline1430Issues::MoveService1431 #execute1432 issue movable1433 generic issue1434 creates a new issue in a new project1435 assigns milestone to new issue1436 assign labels to new issue1437 rewrites issue title1438 rewrites issue description1439 adds system note to old issue at the end1440 adds system note to new issue at the end1441 closes old issue1442 persists new issue1443 persists all changes1444 preserves author1445 creates a new internal id for issue1446 marks issue as moved1447 preserves create time1448 moves the award emoji1449 issue with notes1450 notes without references1451 rewrites existing notes in valid order1452 adds a system note about move after rewritten notes1453 preserves orignal author of comment1454 note that has been updated1455 preserves time when note has been created at1456 preserves time when note has been updated at1457 notes with references1458 rewrites references using a cross reference to old project1459 issue description with uploads1460 rewrites uploads in description1461 rewritting references1462 issue reference1463 rewrites referenced issues creating cross project reference1464 moving to same project1465 raises error1466 move permissions1467 user is reporter in both projects1468 should not raise Exception1469 user is reporter only in new project1470 should raise StandardError with message matching /permissions/1471 user is reporter only in old project1472 should raise StandardError with message matching /permissions/1473 user is reporter in one project and guest in another1474 should raise StandardError with message matching /permissions/1475 issue has already been moved1476 should raise StandardError with message matching /permissions/1477 issue is not persisted1478 should raise StandardError with message matching /permissions/1479Notes::CreateService1480 #execute1481 valid params1482 should be valid1483 should eq "Awesome comment"1484 note with commands1485 /close, /label, /assign & /milestone1486 saves the note and does not alter the note text1487 award emoji1488 creates an award emoji1489 creates regular note if emoji name is invalid1490 normalizes the emoji name1491RepairLdapBlockedUserService1492 #execute1493 changes to normal block after destroying last ldap identity1494 changes to normal block after changing last ldap identity to another provider1495projects/issues/_related_branches1496 shows the related branches with their build status1497RemoveExpiredMembersWorker1498 #perform1499 project members1500 removes expired members1501 leaves members that expire in the future1502 leaves members that do not expire at all1503 group members1504 removes expired members1505 leaves members that expire in the future1506 leaves members that do not expire at all1507 when the last group owner expires1508 does not delete the owner1509Knapsack report was generated. Preview:1510{1511 "spec/controllers/groups/milestones_controller_spec.rb": 6.492038011550903,1512 "spec/controllers/projects/blob_controller_spec.rb": 4.958294868469238,1513 "spec/controllers/projects/protected_branches_controller_spec.rb": 2.64512300491333,1514 "spec/features/admin/admin_abuse_reports_spec.rb": 14.52329421043396,1515 "spec/features/compare_spec.rb": 23.704240560531616,1516 "spec/features/issues/award_spec.rb": 29.95634889602661,1517 "spec/features/merge_requests/created_from_fork_spec.rb": 15.181246042251587,1518 "spec/features/profiles/password_spec.rb": 7.372029542922974,1519 "spec/features/projects/files/project_owner_creates_license_file_spec.rb": 31.098713636398315,1520 "spec/features/projects/members/owner_cannot_request_access_to_his_project_spec.rb": 3.9736297130584717,1521 "spec/features/security/group/internal_access_spec.rb": 224.18391847610474,1522 "spec/features/todos/todos_spec.rb": 95.68413186073303,1523 "spec/finders/snippets_finder_spec.rb": 14.308473348617554,1524 "spec/helpers/import_helper_spec.rb": 0.8710472583770752,1525 "spec/initializers/6_validations_spec.rb": 0.03485250473022461,1526 "spec/lib/banzai/filter/redactor_filter_spec.rb": 17.549572229385376,1527 "spec/lib/banzai/reference_parser/base_parser_spec.rb": 33.979363203048706,1528 "spec/lib/extracts_path_spec.rb": 5.754631757736206,1529 "spec/lib/gitlab/ci/build/artifacts/metadata_spec.rb": 0.10868525505065918,1530 "spec/lib/gitlab/ci/config/node/stages_spec.rb": 0.05886673927307129,1531 "spec/lib/gitlab/database_spec.rb": 0.06686758995056152,1532 "spec/lib/gitlab/gfm/reference_rewriter_spec.rb": 68.05450987815857,1533 "spec/lib/gitlab/google_code_import/client_spec.rb": 0.01798534393310547,1534 "spec/lib/gitlab/ldap/access_spec.rb": 4.086605072021484,1535 "spec/lib/gitlab/metrics_spec.rb": 0.0568995475769043,1536 "spec/lib/gitlab/sherlock/transaction_spec.rb": 0.09146571159362793,1537 "spec/lib/json_web_token/token_spec.rb": 0.0072591304779052734,1538 "spec/models/ci/trigger_spec.rb": 1.483048677444458,1539 "spec/models/cycle_analytics/code_spec.rb": 66.43023824691772,1540 "spec/models/group_spec.rb": 31.81512451171875,1541 "spec/models/namespace_spec.rb": 17.249131441116333,1542 "spec/models/project_services/gitlab_issue_tracker_service_spec.rb": 9.5363609790802,1543 "spec/models/protected_branch_spec.rb": 23.38201403617859,1544 "spec/requests/api/deploy_keys_spec.rb": 50.51107120513916,1545 "spec/requests/api/oauth_tokens_spec.rb": 1.5804035663604736,1546 "spec/requests/ci/api/triggers_spec.rb": 24.642958879470825,1547 "spec/services/ci/process_pipeline_service_spec.rb": 30.56914734840393,1548 "spec/services/issues/move_service_spec.rb": 197.94838285446167,1549 "spec/services/notes/create_service_spec.rb": 13.04025387763977,1550 "spec/services/repair_ldap_blocked_user_service_spec.rb": 0.9480986595153809,1551 "spec/views/projects/issues/_related_branches.html.haml_spec.rb": 1.1056830883026123,1552 "spec/workers/remove_expired_members_worker_spec.rb": 16.3955469131469731553}1554Knapsack global time execution for tests: 18m 11s1555Finished in 19 minutes 5 seconds (files took 26.05 seconds to load)1556457 examples, 0 failures1557Creating cache ruby21...1558vendor/apt: found 54 matching files 1559vendor/ruby: found 37878 matching files 1560Archive is up to date! 1561Uploading artifacts...1562knapsack/: found 4 matching files 1563coverage/: found 5 matching files 1564Uploading artifacts to coordinator... ok id=4678298 responseStatus=201 Created token=UP4yxHyu1565Build succeeded