learn-test 3.3.0.pre.5 → 3.3.0.pre.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8bcb52a7bdd3a25aa1938ba7d13b929bb52e2ecae2107810dd074ad400a04c1c
4
- data.tar.gz: f5fbd110ec71a7be53ef29ee44debbfa5febff13d70cdd6633624bae7fd9ccd3
3
+ metadata.gz: 7906a9d22e49996f18bf0b8c0cd1c7d76f5ef27447ee235b09403c58b6132340
4
+ data.tar.gz: 98f97cbd9e8d2b0bd643ff95e9e6f5ec11988a74a4e1a17819d303cbb2b9bba8
5
5
  SHA512:
6
- metadata.gz: 2ae93ca8deccd1c7879ba6b22aee84b64b92d85826ebfcf188c02bdccfb07935df88e661d75d4dfe0453bdbe02fbef4f0e2dcc15b020950191be07e9017c3b25
7
- data.tar.gz: 4462b95bd0165cf7693b63aab7faab069e02a99f6c96ac47bea33d2a44d427a6b78b1c834abe5148732c1ff062ddc5e0959e282884dc8487a24d18659776f1c0
6
+ metadata.gz: 6ded3c645f8ae0ef2f7a2ab4cf39819b42f6c82a5a93e7876ad2ab625199d033a311fbbff03adf736a6ac64cbb655ae03eb35147abeca20ee13a59efe6979453
7
+ data.tar.gz: d41f77188f4fb422e216d0d808ab817d7a3ec915ca12376f62cdbecb39384e5256b100b4135869cb8e3e3dc4b4aeb2d52eee1ef24369fcf7a3466be130587df5
@@ -20,7 +20,7 @@ module LearnTest
20
20
 
21
21
  current_branch = @base.current_branch
22
22
 
23
- raise NoCommitsError, 'master' if current_branch.nil? # TODO: Swap to `main`?
23
+ raise Errors::NoCommitsError, 'master' if current_branch.nil? # TODO: Swap to `main`?
24
24
 
25
25
  @tmp = Tempfile.new(TEMPFILE)
26
26
  @working_branch = Branch.new(base: @base, name: current_branch)
@@ -16,10 +16,10 @@ module LearnTest
16
16
  begin
17
17
  @base.revparse(@name)
18
18
  rescue ::Git::GitExecuteError => e
19
- regex = LearnTest::Git::Wip::NoCommitsError::REGEX
19
+ regex = Errors::NoCommitsError::REGEX
20
20
 
21
21
  if raise_no_commits
22
- raise e.message.match(regex) ? LearnTest::Git::Wip::NoCommitsError.new(@name) : e
22
+ raise e.message.match(regex) ? Errors::NoCommitsError.new(@name) : e
23
23
  end
24
24
 
25
25
  raise unless e.message.match(regex)
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module LearnTest
4
+ module Git
5
+ module Wip
6
+ module Errors
7
+ class BaseError < StandardError; end
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module LearnTest
4
+ module Git
5
+ module Wip
6
+ module Errors
7
+ class NoChangesError < BaseError
8
+ def initialize(branch)
9
+ super "No changes found on `#{branch}`"
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module LearnTest
4
+ module Git
5
+ module Wip
6
+ module Errors
7
+ class NoCommitsError < BaseError
8
+ REGEX = /unknown revision or path not in the working tree/i.freeze
9
+
10
+ def initialize(branch)
11
+ super "Branch `#{branch}` doesn't have any commits. Please commit and try again."
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'fileutils'
4
+
3
5
  module LearnTest
4
6
  module Git
5
7
  module Wip
@@ -10,7 +12,11 @@ module LearnTest
10
12
 
11
13
  def initialize(base:, name:)
12
14
  dir = File.join(base.repo.path, PREFIX)
13
- Dir.mkdir(dir, 0755) unless Dir.exist?(dir)
15
+ file = File.join(dir, name)
16
+ sha = base.log(1)[0].sha
17
+
18
+ FileUtils.mkdir_p(dir, { mode: 0755 }) unless Dir.exist?(dir)
19
+ File.open(file, 'w+') { |f| f.puts sha } unless File.exist?(file)
14
20
 
15
21
  super(base: base, name: "#{PREFIX}#{name}")
16
22
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module LearnTest
4
- VERSION = '3.3.0.pre.5'
4
+ VERSION = '3.3.0.pre.6'
5
5
  end
@@ -43,7 +43,11 @@ describe LearnTest::Git::Wip::Base do
43
43
  before(:each) { initialize_repo }
44
44
 
45
45
  it 'should create refs/wip' do
46
- expect(Dir).to receive(:mkdir).with("#{path}/.git/refs/wip/", 0755)
46
+ expect(FileUtils)
47
+ .to receive(:mkdir_p)
48
+ .with("#{path}/.git/refs/wip/", { mode: 0755 })
49
+ .and_call_original
50
+
47
51
  instance.process!
48
52
  end
49
53
  end
@@ -52,7 +56,7 @@ describe LearnTest::Git::Wip::Base do
52
56
  before(:each) { initialize_repo(commit: false) }
53
57
 
54
58
  it 'should raise' do
55
- expect { instance.process! }.to raise_error(LearnTest::Git::Wip::NoCommitsError)
59
+ expect { instance.process! }.to raise_error(LearnTest::Git::Wip::Errors::NoCommitsError)
56
60
  end
57
61
  end
58
62
 
@@ -91,7 +91,7 @@ describe LearnTest::Git::Wip::Branch do
91
91
  expect do
92
92
  branch.last_revision(raise_no_commits: true)
93
93
  end.to raise_error(
94
- LearnTest::Git::Wip::NoCommitsError, "Branch `#{name}` doesn't have any commits. Please commit and try again."
94
+ LearnTest::Git::Wip::Errors::NoCommitsError, "Branch `#{name}` doesn't have any commits. Please commit and try again."
95
95
  )
96
96
  end
97
97
  end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ describe LearnTest::Git::Wip::Errors::BaseError do
4
+ it 'should inherit from StandardError' do
5
+ expect(described_class).to be < StandardError
6
+ end
7
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ describe LearnTest::Git::Wip::Errors::NoChangesError do
4
+ let(:branch) { rand(0..999_999).to_s }
5
+
6
+ it 'should inherit from Error' do
7
+ expect(described_class).to be < LearnTest::Git::Wip::Errors::BaseError
8
+ end
9
+
10
+ it 'should require a branch' do
11
+ expect { described_class.new }.to raise_error(ArgumentError)
12
+ end
13
+
14
+ it 'should have the correct messaging' do
15
+ error = described_class.new(branch)
16
+ expect(error.message).to eq "No changes found on `#{branch}`"
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ describe LearnTest::Git::Wip::Errors::NoCommitsError do
4
+ let(:branch) { rand(0..999_999).to_s }
5
+
6
+ it 'should inherit from Error' do
7
+ expect(described_class).to be < LearnTest::Git::Wip::Errors::BaseError
8
+ end
9
+
10
+ it 'should require a branch' do
11
+ expect { described_class.new }.to raise_error(ArgumentError)
12
+ end
13
+
14
+ it 'should have the correct messaging' do
15
+ error = described_class.new(branch)
16
+ expect(error.message).to eq "Branch `#{branch}` doesn't have any commits. Please commit and try again."
17
+ end
18
+ end
@@ -12,6 +12,8 @@ support_dir = File.join('./', 'spec', 'support', '**', '*.rb')
12
12
  Dir.glob(support_dir).each { |f| require f }
13
13
 
14
14
  RSpec.configure do |config|
15
+ config.filter_run focus: true
16
+
15
17
  config.expect_with :rspec do |expectations|
16
18
  expectations.include_chain_clauses_in_custom_matcher_descriptions = true
17
19
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: learn-test
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.0.pre.5
4
+ version: 3.3.0.pre.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Flatiron School
@@ -184,7 +184,9 @@ files:
184
184
  - lib/learn_test/git.rb
185
185
  - lib/learn_test/git/wip/base.rb
186
186
  - lib/learn_test/git/wip/branch.rb
187
- - lib/learn_test/git/wip/error.rb
187
+ - lib/learn_test/git/wip/errors/base_error.rb
188
+ - lib/learn_test/git/wip/errors/no_changes_error.rb
189
+ - lib/learn_test/git/wip/errors/no_commits_error.rb
188
190
  - lib/learn_test/git/wip/reference.rb
189
191
  - lib/learn_test/github_interactor.rb
190
192
  - lib/learn_test/js_strategy.rb
@@ -221,7 +223,9 @@ files:
221
223
  - spec/fixtures/rspec-unit-spec/spec/spec_helper.rb
222
224
  - spec/learn_test/git/wip/base_spec.rb
223
225
  - spec/learn_test/git/wip/branch_spec.rb
224
- - spec/learn_test/git/wip/error_spec.rb
226
+ - spec/learn_test/git/wip/errors/base_error_spec.rb
227
+ - spec/learn_test/git/wip/errors/no_changes_error_spec.rb
228
+ - spec/learn_test/git/wip/errors/no_commits_error_spec.rb
225
229
  - spec/learn_test/git_spec.rb
226
230
  - spec/learn_test/reporter_spec.rb
227
231
  - spec/learn_test/username_parser_spec.rb
@@ -265,7 +269,9 @@ test_files:
265
269
  - spec/fixtures/rspec-unit-spec/spec/spec_helper.rb
266
270
  - spec/learn_test/git/wip/base_spec.rb
267
271
  - spec/learn_test/git/wip/branch_spec.rb
268
- - spec/learn_test/git/wip/error_spec.rb
272
+ - spec/learn_test/git/wip/errors/base_error_spec.rb
273
+ - spec/learn_test/git/wip/errors/no_changes_error_spec.rb
274
+ - spec/learn_test/git/wip/errors/no_commits_error_spec.rb
269
275
  - spec/learn_test/git_spec.rb
270
276
  - spec/learn_test/reporter_spec.rb
271
277
  - spec/learn_test/username_parser_spec.rb
@@ -1,23 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module LearnTest
4
- module Git
5
- module Wip
6
- class Error < StandardError; end
7
-
8
- class NoChangesError < Error
9
- def initialize(branch)
10
- super "No changes found on `#{branch}`"
11
- end
12
- end
13
-
14
- class NoCommitsError < Error
15
- REGEX = /unknown revision or path not in the working tree/i.freeze
16
-
17
- def initialize(branch)
18
- super "Branch `#{branch}` doesn't have any commits. Please commit and try again."
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,41 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe LearnTest::Git::Wip do
4
- let(:branch) { rand(0..999_999).to_s }
5
-
6
- describe LearnTest::Git::Wip::Error do
7
- it 'should inherit from StandardError' do
8
- expect(described_class).to be < StandardError
9
- end
10
- end
11
-
12
- describe LearnTest::Git::Wip::NoChangesError do
13
- it 'should inherit from Error' do
14
- expect(described_class).to be < LearnTest::Git::Wip::Error
15
- end
16
-
17
- it 'should require a branch' do
18
- expect { described_class.new }.to raise_error(ArgumentError)
19
- end
20
-
21
- it 'should have the correct messaging' do
22
- error = described_class.new(branch)
23
- expect(error.message).to eq "No changes found on `#{branch}`"
24
- end
25
- end
26
-
27
- describe LearnTest::Git::Wip::NoCommitsError do
28
- it 'should inherit from Error' do
29
- expect(described_class).to be < LearnTest::Git::Wip::Error
30
- end
31
-
32
- it 'should require a branch' do
33
- expect { described_class.new }.to raise_error(ArgumentError)
34
- end
35
-
36
- it 'should have the correct messaging' do
37
- error = described_class.new(branch)
38
- expect(error.message).to eq "Branch `#{branch}` doesn't have any commits. Please commit and try again."
39
- end
40
- end
41
- end