From 91780ac0677697f1205c98b125ffc1db4a9629f9 Mon Sep 17 00:00:00 2001 From: mo khan Date: Wed, 16 Sep 2020 16:13:41 -0600 Subject: fix: correct linter errors --- .rubocop.yml | 8 -------- lib/e2e/docker.rb | 25 +++++++++++++++++++------ spec/gemnasium_maven_spec.rb | 9 +++++---- spec/support/scanner_context.rb | 23 ----------------------- spec/support/with_scanner_context.rb | 23 +++++++++++++++++++++++ 5 files changed, 47 insertions(+), 41 deletions(-) delete mode 100644 spec/support/scanner_context.rb create mode 100644 spec/support/with_scanner_context.rb diff --git a/.rubocop.yml b/.rubocop.yml index f6d3f57..5dc64fb 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -15,16 +15,8 @@ AllCops: Cop/GemFetcher: Enabled: false -Naming/ClassAndModuleCamelCase: - Exclude: - - 'lib/license/management/report/v1_1.rb' - - 'lib/license/management/report/v2_1.rb' - Layout/FirstArrayElementIndentation: EnforcedStyle: consistent Layout/FirstHashElementIndentation: EnforcedStyle: consistent - -Rails/SkipsModelValidations: - Enabled: false diff --git a/lib/e2e/docker.rb b/lib/e2e/docker.rb index 8cd9fbe..a636438 100644 --- a/lib/e2e/docker.rb +++ b/lib/e2e/docker.rb @@ -14,18 +14,31 @@ class Docker def build(tag:) Dir.chdir pwd do - system("docker build --network=host -t #{tag} .") + system(expand([:docker, :build, "--network=host", "-t", tag, "."])) end end def run(image:, project_path: Pathname.pwd, env: {}, debug: ENV.fetch('DEBUG', 'false') == 'true') env_options = DEFAULT_ENV.merge(env).map { |(key, value)| "--env #{key}='#{value}'" } Dir.chdir pwd do - command = if debug - expand([:docker, :run, '-it', "--entrypoint=''", '--rm', "--volume=#{project_path}:/tmp/app", '--add-host=maven.test:127.0.0.1', '--network=host', env_options, image, '/bin/bash -l']) - else - expand([:docker, :run, '--rm', "--volume=#{project_path}:/tmp/app", '--network=host', '--add-host=maven.test:127.0.0.1', env_options, image, '/analyzer run']) - end + command = + if debug + expand([ + :docker, :run, '-it', "--entrypoint=''", '--rm', + "--volume=#{project_path}:/tmp/app", + '--add-host=maven.test:127.0.0.1', + '--network=host', + env_options, image, '/bin/bash -l' + ]) + else + expand([ + :docker, :run, '--rm', + "--volume=#{project_path}:/tmp/app", + '--network=host', + '--add-host=maven.test:127.0.0.1', + env_options, image, '/analyzer run' + ]) + end system(command, exception: true) end end diff --git a/spec/gemnasium_maven_spec.rb b/spec/gemnasium_maven_spec.rb index b34b02f..09c45c8 100644 --- a/spec/gemnasium_maven_spec.rb +++ b/spec/gemnasium_maven_spec.rb @@ -9,10 +9,11 @@ RSpec.describe 'gemnasium-maven' do let(:env) { { 'ADDITIONAL_CA_CERT_BUNDLE' => X509.self_signed.to_pem, 'DS_JAVA_VERSION' => java_version } } specify do - expect(subject.to_h['dependency_files'].count).to be(1) - expect(subject.to_h['dependency_files'][0]['dependencies'].count).to be(1) - expect(subject.to_h['dependency_files'][0]['dependencies'][0]['package']['name']).to eql('com.fasterxml.jackson.core/jackson-core') - expect(subject.to_h['dependency_files'][0]['dependencies'][0]['version']).to eql('2.10.0') + files = subject.to_h['dependency_files'] + expect(files.count).to be(1) + expect(files[0]['dependencies'].count).to be(1) + expect(files[0]['dependencies'][0]['package']['name']).to eql('com.fasterxml.jackson.core/jackson-core') + expect(files[0]['dependencies'][0]['version']).to eql('2.10.0') end end end diff --git a/spec/support/scanner_context.rb b/spec/support/scanner_context.rb deleted file mode 100644 index af4e7fc..0000000 --- a/spec/support/scanner_context.rb +++ /dev/null @@ -1,23 +0,0 @@ -# frozen_string_literal: true -RSpec.shared_context 'a scanner' do - subject { project.report_for(type: report_type) } - - let(:docker) { Docker.new(pwd: Pathname.pwd.join("src/#{scanner}")) } - let(:docker_image) { "#{scanner}:latest" } - let(:scanner) { raise "`scanner` not specified. Choose: #{Pathname.pwd.glob('src/*').map(&:basename).join(', ')}" } - let(:project) { Project.new } - let(:env) { {} } - let(:report_types) { { 'gemnasium-maven' => :dependency_scanning, 'spotbugs' => :sast } } - let(:report_type) { report_types.fetch(scanner) } - - around do |example| - project.mount(dir: fixture_file(project_fixture)) - docker.run(image: docker_image, project_path: project.path, env: env) - example.run - project.cleanup - end -end - -RSpec.configure do |config| - config.include_context 'a scanner' -end diff --git a/spec/support/with_scanner_context.rb b/spec/support/with_scanner_context.rb new file mode 100644 index 0000000..c9f167d --- /dev/null +++ b/spec/support/with_scanner_context.rb @@ -0,0 +1,23 @@ +# frozen_string_literal: true +RSpec.shared_context 'with scanner' do + subject { project.report_for(type: report_type) } + + let(:docker) { Docker.new(pwd: Pathname.pwd.join("src/#{scanner}")) } + let(:docker_image) { "#{scanner}:latest" } + let(:scanner) { raise "`scanner` not specified. Choose: #{Pathname.pwd.glob('src/*').map(&:basename).join(', ')}" } + let(:project) { Project.new } + let(:env) { {} } + let(:report_types) { { 'gemnasium-maven' => :dependency_scanning, 'spotbugs' => :sast } } + let(:report_type) { report_types.fetch(scanner) } + + around do |example| + project.mount(dir: fixture_file(project_fixture)) + docker.run(image: docker_image, project_path: project.path, env: env) + example.run + project.cleanup + end +end + +RSpec.configure do |config| + config.include_context 'with scanner' +end -- cgit v1.2.3