Sha256: 08371dd8d410afc54fc14fc6921f83e4089050ee58dfd5f75bfe65771bbf9281

Contents?: true

Size: 1.17 KB

Versions: 16

Compression:

Stored size: 1.17 KB

Contents

require 'spec_helper'

module LicenseFinder
  describe ProjectFinder do
    describe '#find_projects' do
      it 'returns absolute paths for projects with active package managers' do
        finder = ProjectFinder.new('spec/fixtures/composite')

        active_projects = finder.find_projects
        expect(has_project_path?(active_projects, 'composite')).to be true
        expect(has_project_path?(active_projects, 'composite/project1')).to be true
        expect(has_project_path?(active_projects, 'composite/project2')).to be true
        expect(has_project_path?(active_projects, 'composite/not_a_project')).to be false
      end

      it 'searches for projects in project_path' do
        expect(Dir).to receive(:glob).with('/path/to/projects/**/').and_return([])
        ProjectFinder.new('/path/to/projects').find_projects
      end

      it 'rejects nested dependencies' do
        finder = ProjectFinder.new('spec/fixtures/composite')

        active_projects = finder.find_projects
        expect(has_project_path?(active_projects, 'pivotal/foo')).to be false
      end
    end

    def has_project_path?(projects, path)
      projects.any? { |p| p.end_with?(path) }
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
license_finder-3.0.4 spec/lib/license_finder/project_finder_spec.rb
license_finder-3.0.2 spec/lib/license_finder/project_finder_spec.rb
license_finder-3.0.1 spec/lib/license_finder/project_finder_spec.rb
license_finder-3.0.0 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.2 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.1 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc9 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc8 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc7 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc6 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc5 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc4 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc3 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc2 spec/lib/license_finder/project_finder_spec.rb
license_finder-2.1.0.rc1 spec/lib/license_finder/project_finder_spec.rb