breezer 0.9.0 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +1 -1
- data/Gemfile.lock +1 -1
- data/lib/breezer/command.rb +14 -6
- data/lib/breezer/version.rb +1 -1
- data/test/test_command.rb +70 -0
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e74d162c603c5b847156a19d964cfd416c25c438857b52fd41db29541f9a9247
|
4
|
+
data.tar.gz: 8811230f6e8501a695ae771ce2ed3f8fb7ca26206c0a78d5abc552c30a7d8f75
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb5ad11225a914577596a3998df6efa5a2ef668c354c04d1b46fd22c71b78c6c7db79b727f116418de84c56466c7230ed71ce90fb5918ca4e1a03b29892079d3
|
7
|
+
data.tar.gz: e00cb84064da02d14599b880d79b5ff192d4592f10c3e2aaa6901db5baa4c0a8c2e3036e78905bad3fdf70f8fc2a09626dc610914af6f830387f6edf88f97c21
|
data/.rubocop.yml
CHANGED
data/Gemfile.lock
CHANGED
data/lib/breezer/command.rb
CHANGED
@@ -15,18 +15,25 @@ module Breezer
|
|
15
15
|
options = parse_options({ debug: false }, args)
|
16
16
|
lockfile_file = options[:lockfile_file] || "#{gemfile_file}.lock"
|
17
17
|
|
18
|
+
# Will raise if files are not valid
|
19
|
+
check_files_presence!(gemfile_file, lockfile_file)
|
20
|
+
|
21
|
+
Breezer.freeze!(gemfile_file, lockfile_file, options)
|
22
|
+
end
|
23
|
+
|
24
|
+
# Check that the Gemfile and the Lockfile exists
|
25
|
+
def check_files_presence!(gemfile_file, lockfile_file)
|
26
|
+
|
18
27
|
unless File.file?(gemfile_file)
|
19
28
|
puts "Unable to find a Gemfile (searched in #{gemfile_file})"
|
20
29
|
raise NoGemfileException, "Unable to find a Gemfile (searched in #{gemfile_file})"
|
21
30
|
end
|
22
31
|
|
23
|
-
|
24
|
-
puts "Unable to find a Lockfile (Gemfile.lock). If you don't have a Gemfile.lock yet, "\
|
25
|
-
"you can run 'bundle install' first. (searched in #{lockfile_file})"
|
26
|
-
raise NoLockfileException, "Unable to find a Lockfile (Gemfile.lock) (searched in #{lockfile_file})"
|
27
|
-
end
|
32
|
+
return if File.file?(lockfile_file)
|
28
33
|
|
29
|
-
|
34
|
+
puts "Unable to find a Lockfile (Gemfile.lock). If you don't have a Gemfile.lock yet, "\
|
35
|
+
"you can run 'bundle install' first. (searched in #{lockfile_file})"
|
36
|
+
raise NoLockfileException, "Unable to find a Lockfile (Gemfile.lock) (searched in #{lockfile_file})"
|
30
37
|
end
|
31
38
|
|
32
39
|
def get_gemfile_file(args)
|
@@ -74,6 +81,7 @@ module Breezer
|
|
74
81
|
exit(0)
|
75
82
|
end
|
76
83
|
end.parse!(argv)
|
84
|
+
options
|
77
85
|
end
|
78
86
|
end
|
79
87
|
end
|
data/lib/breezer/version.rb
CHANGED
@@ -0,0 +1,70 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'minitest/autorun'
|
4
|
+
require 'minitest/around/spec'
|
5
|
+
require 'breezer'
|
6
|
+
|
7
|
+
describe Breezer::Command do # rubocop:todo Metrics/BlockLength
|
8
|
+
around do |test|
|
9
|
+
files = Dir["#{File.dirname(__FILE__)}/samples/*"]
|
10
|
+
Dir.mktmpdir do |dir|
|
11
|
+
@dir = dir
|
12
|
+
FileUtils.cp files, dir
|
13
|
+
Bundler::SharedHelpers.chdir(dir) do
|
14
|
+
test.call
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
it 'can get_gemfile_file' do
|
20
|
+
_(Breezer::Command.get_gemfile_file([])).must_equal('./Gemfile')
|
21
|
+
_(Breezer::Command.get_gemfile_file(['..'])).must_equal('../Gemfile')
|
22
|
+
_(Breezer::Command.get_gemfile_file(['Gemfile'])).must_equal('Gemfile')
|
23
|
+
_(Breezer::Command.get_gemfile_file(['./Gemfile.checked'])).must_equal('./Gemfile.checked')
|
24
|
+
_(Breezer::Command.get_gemfile_file(['../../idontexist'])).must_equal('../../idontexist')
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'can parse_options' do
|
28
|
+
_(Breezer::Command.parse_options({}, [])).must_equal({})
|
29
|
+
_(Breezer::Command.parse_options({}, %w[-l major])).must_equal(level: 'major')
|
30
|
+
_(Breezer::Command.parse_options({}, %w[-L Gemfile.look])).must_equal(lockfile_file: 'Gemfile.look')
|
31
|
+
_(Breezer::Command.parse_options({}, %w[-d])).must_equal(dry: true)
|
32
|
+
_(Breezer::Command.parse_options({}, %w[-o Gemfool])).must_equal(output: 'Gemfool')
|
33
|
+
_(Breezer::Command.parse_options({}, %w[-c])).must_equal(check: true)
|
34
|
+
end
|
35
|
+
|
36
|
+
it 'run without options' do
|
37
|
+
_specs = Breezer::Command.run!(%w[])
|
38
|
+
_(File.read('Gemfile')).must_equal File.read('Gemfile.final.patch')
|
39
|
+
end
|
40
|
+
|
41
|
+
it 'run with minor level options' do
|
42
|
+
_specs = Breezer::Command.run!(%w[Gemfile -l minor])
|
43
|
+
_(File.read('Gemfile')).must_equal File.read('Gemfile.final.minor')
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'run with dry run' do
|
47
|
+
specs = Breezer::Command.run!(%w[Gemfile -d])
|
48
|
+
_(specs).must_equal File.read('Gemfile.final.patch')
|
49
|
+
_(File.read('Gemfile')).wont_be_same_as File.read('Gemfile.final.patch')
|
50
|
+
end
|
51
|
+
|
52
|
+
it 'run with custom output' do
|
53
|
+
specs = Breezer::Command.run!(%w[Gemfile -o Gemfile.custom])
|
54
|
+
|
55
|
+
_(specs).must_equal File.read('Gemfile.final.patch')
|
56
|
+
_(File.read('Gemfile')).wont_be_same_as File.read('Gemfile.final.patch')
|
57
|
+
_(File.read('Gemfile.custom')).must_equal File.read('Gemfile.final.patch')
|
58
|
+
end
|
59
|
+
|
60
|
+
it 'run with checks on invalid gemfile' do
|
61
|
+
specs = Breezer::Command.run!(%w[Gemfile -c])
|
62
|
+
_(specs).must_equal false
|
63
|
+
_(File.read('Gemfile')).wont_be_same_as File.read('Gemfile.final.patch')
|
64
|
+
end
|
65
|
+
|
66
|
+
it 'run with checks on valid gemfile' do
|
67
|
+
specs = Breezer::Command.run!(%w[Gemfile.checked --lockfile=Gemfile.lock -c])
|
68
|
+
_(specs).must_equal true
|
69
|
+
end
|
70
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: breezer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- André Aubin
|
@@ -123,6 +123,7 @@ files:
|
|
123
123
|
- test/samples/Gemfile.final.patch
|
124
124
|
- test/samples/Gemfile.lock
|
125
125
|
- test/test_breezer.rb
|
126
|
+
- test/test_command.rb
|
126
127
|
- test/test_freezer.rb
|
127
128
|
- test/test_parser.rb
|
128
129
|
homepage: http://rubygems.org/gems/breezer
|