diff options
author | Sanad Liaquat <sliaquat@gitlab.com> | 2019-05-06 12:10:17 +0000 |
---|---|---|
committer | Sanad Liaquat <sliaquat@gitlab.com> | 2019-05-06 12:10:17 +0000 |
commit | 38d57a61b6d960b2997578a0a12a40fa686c30ea (patch) | |
tree | 3f0170cb44205fc70420a1b95768e01fdc237fb6 | |
parent | 2c3bb832c8e0be701deca0cef0545f535d5e0cf8 (diff) | |
parent | 3554736f23d72bd6d2d499d89ce5418d28c20302 (diff) | |
download | gitlab-ce-38d57a61b6d960b2997578a0a12a40fa686c30ea.tar.gz |
Merge branch 'qa-escape-netrc-regex' into 'master'
[QA] Escape arg used as regex
Closes gitlab-org/quality/performance#2
See merge request gitlab-org/gitlab-ce!28104
-rw-r--r-- | qa/qa/git/repository.rb | 2 | ||||
-rw-r--r-- | qa/spec/git/repository_spec.rb | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/qa/qa/git/repository.rb b/qa/qa/git/repository.rb index b3bad40a90f..84353e3d0c7 100644 --- a/qa/qa/git/repository.rb +++ b/qa/qa/git/repository.rb @@ -251,7 +251,7 @@ module QA end def netrc_already_contains_content? - read_netrc_content.grep(/^#{netrc_content}$/).any? + read_netrc_content.grep(/^#{Regexp.escape(netrc_content)}$/).any? end end end diff --git a/qa/spec/git/repository_spec.rb b/qa/spec/git/repository_spec.rb index 776dce31d4f..5198eb6f58b 100644 --- a/qa/spec/git/repository_spec.rb +++ b/qa/spec/git/repository_spec.rb @@ -116,6 +116,15 @@ describe QA::Git::Repository do expect(File.read(File.join(tmp_netrc_dir, '.netrc'))) .to eq("machine foo login user password foo\n") end + + it 'adds credentials with special characters' do + password = %q[!"#$%&')(*+,-./:;<=>?] + repository.username = 'user' + repository.password = password + + expect(File.read(File.join(tmp_netrc_dir, '.netrc'))) + .to eq("machine foo login user password #{password}\n") + end end end end |