ruby_git_hooks 0.0.44 → 0.0.45

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZWIzZWY4YWFhMDQ3OWYyMGJlOWQ1ZjExZTA2NjY0ZDBjMGFiOWVlZA==
4
+ OWU2N2FmNTkyNGM1NzcwYWZkNmM4NmNmZWY0NGMyM2NkNjEyMDVmMg==
5
5
  data.tar.gz: !binary |-
6
- ZGJiMTIwZDk4YmY5YWYwMTc3MGJiYTcyNWZlOTg5Y2VlOGM2MWIzNA==
6
+ NjM5YTJiNTRjZmFlY2U4Y2MxNGU0ZTkzYjZmMTc5MmU2MGU4ZjNiOQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MTJlOTk4MDliOTA0ZWNkYjQ2Y2FkZmMwZGJlOWQwOTUyOWU3YmUzNGJiN2Fi
10
- NTk1NTJjMDM4Nzk1YTRkNzhjNWM3ZWZmYjJlZTAyYjAxYjZjZGFjZDIyNzQy
11
- N2M0NzVlZTY5YjZiMjcwMGQzMDBhNTUwNWNiYWNlYmM0NTU3OWE=
9
+ N2VjNWMzODQyMzJlMzU0YWQ4MjIzZjRiYzNjNzhhOWY0MmNkZjNkNmFmYTU0
10
+ ZWM4MzU4MWJjN2FmZWQ0M2Q0MDBlYmE0MjRjMDNkMTE2NDkxY2IxZDMwMzc5
11
+ OGI2MzJkNTgwMDRkMDZhMTRiNGI0OTQzOTE2MjliZGY4NmRjNDk=
12
12
  data.tar.gz: !binary |-
13
- MjNlNzQzZDVlOWZjYTI0Y2NkMTVlYmMzZjczNjlhM2I5ZGE2NjBjZjVjMTQ3
14
- NTVlNDRmMGFkYzRkODhjODBjYjk5MTJhYmQ2MjIwYTYyMzJjNzMzYWIxY2Ri
15
- YWFmMjFhYmE3ODdmYjM5MmUzMDViNWIzYTE0N2MxMjc4YmM4ODk=
13
+ ODcyNzMzMTljOTgyZThkYTk0OTMxODZkYjBhY2RiNGE2ZWQyMzdmYmJmNzUx
14
+ YmQ1MmViZGZkY2ZlZmE2Y2IxOWVlNDg5Mjg2NjI0Zjc2MmNjZWE5ZmY5MWFj
15
+ Y2YwYTMzMzIxZjJhNWFmY2FlYzE2NTFkYTg5ZDkzYjUzNzMxMDY=
@@ -58,6 +58,16 @@ module RubyGitHooks::GitOps
58
58
  @single_file_counter += 1
59
59
  end
60
60
 
61
+ def new_multi_file_commit(num_files = 3, repo_name = "child_repo", commit_message = "multi-file commit", base_filename = "test", contents="Contents")
62
+ (1..num_files).each do |num|
63
+ File.open(File.join(repo_name, base_filename + num.to_s), "w") do |f|
64
+ f.write(contents)
65
+ end
66
+ end
67
+ Hook.shell! "cd #{repo_name} && git add . && git commit -m \"#{commit_message}\""
68
+
69
+ end
70
+
61
71
  def git_delete(repo_name="child_repo", filename="file_to_delete")
62
72
  # filename is a file that has already been added and commited to the repo
63
73
  Hook.shell! "cd #{repo_name} && git rm #{filename}"
@@ -68,7 +78,6 @@ module RubyGitHooks::GitOps
68
78
  Hook.shell! "cd #{repo_name} && git mv #{filename} #{new_filename}"
69
79
  end
70
80
 
71
-
72
81
  def last_commit_sha(repo_name = "child_repo")
73
82
  Hook.shell!("cd #{repo_name} && git log -n 1 --format=%H").chomp
74
83
  end
@@ -121,9 +121,8 @@ class JiraCommentAddHook < RubyGitHooks::Hook
121
121
  # This is the initial commit so all files were added, but have to add the A ourselves
122
122
  files_with_status = Hook.shell!("git ls-tree --name-status -r #{commit}").split("\n")
123
123
  # put the A at the front
124
- files_with_status.map!{|filename| "A\t" + filename}
124
+ files_with_status = files_with_status.map{|filename| "A\t" + filename}.join("\n")
125
125
  else
126
-
127
126
  files_with_status = Hook.shell!("git diff --name-status #{base}..#{current}")
128
127
  end
129
128
  files_with_status
@@ -1,5 +1,5 @@
1
1
  # Copyright (C) 2013-2014 OL2, Inc. See LICENSE.txt for details.
2
2
 
3
3
  module RubyGitHooks
4
- VERSION = "0.0.44"
4
+ VERSION = "0.0.45"
5
5
  end
@@ -159,7 +159,6 @@ JSON
159
159
  { "fields": { "status": { "name": "Open" } } }
160
160
  JSON
161
161
  # look at output to see what gets generated for message
162
- puts "***** STARTING MERGE REF CHECK *****"
163
162
  fake_hook_check("Message with GOOD-234 reference to Jira" , true)
164
163
  end
165
164
 
@@ -223,6 +222,43 @@ JSON
223
222
  end
224
223
 
225
224
 
225
+ def test_first_commit
226
+ # if we had a way to check the actual message generated for the content, which we don't right now
227
+ # we should check that the first commit shows the changes with "A" in front of them and with the correct
228
+ # formatting (we missed a bug where it leaves them in an array instead of a list). BUT we can at least
229
+ # do a new commit with multiple files and then look at the output to be sure it's right.
230
+
231
+ puts "TEST FIRST COMMIT"
232
+ mock(RestClient).get("https://user:password@jira.example.com/rest/api/latest/issue/GOOD-234") { <<JSON }
233
+ { "fields": { "status": { "name": "Open" } } }
234
+ JSON
235
+
236
+ mock(RestClient).post.with_any_args {<<JSON } # more complicated to check the args, just be sure it's called.
237
+ { "fields": { "status": { "name": "Open" } } }
238
+ JSON
239
+ git_tag("child_repo", "0.1")
240
+
241
+ # we want to test the very first commit, pushed with multiple files,
242
+ # so have to do it specifically instead of what's already set up
243
+ # (can still use @hook)
244
+
245
+ new_bare_repo("parent_repo2.git")
246
+ clone_repo("parent_repo2.git", "child_repo2")
247
+ new_multi_file_commit(3, "child_repo2", "Message with GOOD-234 reference to Jira" )
248
+ stub(@hook).commit_message { msg }
249
+ sha = last_commit_sha("child_repo2") # one commit sha, multiple files changed
250
+ hook_refs = {sha => ["refs/heads/master"]} # it's always the master branch
251
+ stub(@hook).commit_ref_map{ hook_refs }
252
+ stub(@hook).commits{hook_refs.keys}
253
+ Dir.chdir("child_repo2") do
254
+ @hook.check
255
+ end
256
+
257
+ # and look and see if it looks right...
258
+
259
+ end
260
+
261
+
226
262
 
227
263
 
228
264
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_git_hooks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.44
4
+ version: 0.0.45
5
5
  platform: ruby
6
6
  authors:
7
7
  - Noah Gibbs
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-05-01 00:00:00.000000000 Z
13
+ date: 2014-06-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: pony