inspec/test/unit/mock/config_dirs/test-fixture-2-float
Clinton Wolfe 7963131670 Plugins Installer API (#3352)
* Sketch out in comments the unit and functional tests for the installer
* Make a test fixture gem, v0.1.0
* Add a 0.2.0 version of the test fixture gem, this one with a dependency
* Add a fixture with a pre-installed gem
* Correct test-fixture 0.1.0 gem
* Moockup of installed inspec-test-fixture gems
* Uggh add gemspec files to mock installs
* Update gem fixtures, and add a script that does it for me
* Able to load from and list privately managed gems
# Conflicts:
#	lib/inspec/plugin/v2/loader.rb

* Expanded tests, starting on implementation of installer

# Conflicts:
#	test/unit/plugin/v2/loader_test.rb

* Install plugin from local gem file works
* Writes the plugins.json file; needs refactor
* Gem install works; no version pinning
* Install with pinned version works
* Install from path works
* update works
* Validation for uninstall
* Uninstall from path works
* Uninstaller works on gems
* Add search to installer API.


Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2018-09-19 17:38:13 -04:00
..
gems Plugins Installer API (#3352) 2018-09-19 17:38:13 -04:00
plugins.json Plugins Installer API (#3352) 2018-09-19 17:38:13 -04:00
README.md Plugins Installer API (#3352) 2018-09-19 17:38:13 -04:00

This test fixture is a user config dir setup as though the inspec-test-fixture v0.2.0 was already installed, and it has no version constraint.

This is interesting because (unlike 0.1.0) v0.2.0 has a gem dependency.

This was accomplished by executing (without bundler) the following commands:

mkdir -p test/unit/mock/config_dirs/test-fixture-2-float/gems/{2.3.0,2.4.0,2.5.0}
# Here I'm running a ruby 2.4.x binary with rbenv
gem install -N -i test/unit/mock/config_dirs/test-fixture-2-float/gems/2.4.0 test/unit/mock/plugins/inspec-test-fixture/pkg/inspec-test-fixture-0.2.0.gem

Note that we will need to add an installation tree each time we support a new minor or major version of the Ruby VM.