github-pr 0.0.9 → 0.0.91

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b78394b2da805448a04643feb6d119af72244839
4
- data.tar.gz: 0afbeabc31d90ccd411109dff018516df6d139ef
3
+ metadata.gz: 60a15376b4590b507a6b96eddca76e21d0739bfb
4
+ data.tar.gz: 72102f02730440413c6e215f7dfc0443d7762350
5
5
  SHA512:
6
- metadata.gz: 17b93e09c76f22b6736d94e700871a88fe139d07f3ebd7d16ff287e9a74d80305899ef348471df22eddb6be3d4f20369454d2eb6abd2f260ccf74ab9f5b58cb3
7
- data.tar.gz: 58f262f499d2c60cfd7c9ab8858ba709db727d355eeb2176f97ef40e4fb99892bd8feaae45909d2cdc7bc6c6b427c2a4e968d010a847e88e8ab6b3cb0b036535
6
+ metadata.gz: 76c7cf01b426dd3406c440f614fdc608a3bdf52592633d04db153ab9b25c810d717fbe47834e40d792444c3f315503e4bdda184553f6b941a1d66129ebbadbd7
7
+ data.tar.gz: a6ef52910b2f8a0fb7b9782edc5f01e97f499074f97f8a28009c50facaea60eefa63b3d3d3fe8cec161f5d2aaa0b877c21e44887ff5eb57b9eedfb4aafe2931b
data/lib/github-pr/cli.rb CHANGED
@@ -29,6 +29,9 @@ module GitHubPr
29
29
  opts.on("-t", "--title PULLREQUESTTITLE", "Title of the pull request") do |t|
30
30
  options[:title] = t
31
31
  end
32
+ opts.on("-g", "--github-token GITHUBTOKEN", "Generated user token from GitHub") do |t|
33
+ options[:token] = t
34
+ end
32
35
  end.parse!(argv)
33
36
 
34
37
  raise 'You must assign to someone' if options[:assign].nil?
@@ -37,6 +40,7 @@ module GitHubPr
37
40
  # e.g. * master cutting '* ' from begining
38
41
  options[:feature] = self.current_branch if options[:feature].nil?
39
42
  options[:title] = options[:feature] if options[:title].nil?
43
+ options[:token] = options[:token] if options[:token].nil?
40
44
 
41
45
  return options
42
46
  end
@@ -5,7 +5,7 @@ module GitHubPr
5
5
  options = CLI.parse(opts)
6
6
  puts options
7
7
 
8
- poster = Poster.new(Token.create(File.expand_path '~/.config/gh-pr-token'))
8
+ poster = Poster.new(Token.create(token_file_path:File.expand_path '~/.config/gh-pr-token', direct_token: options[:token]))
9
9
  poster.post(options)
10
10
  end
11
11
  end
@@ -7,10 +7,17 @@ require 'fileutils'
7
7
  module GitHubPr
8
8
  class Token
9
9
 
10
- def self.create(token_file_path)
11
- env_token = `echo $GITHUB_TOKEN`
12
-
13
- env_token.nil? ? FileToken.new(token_file_path) : FixedToken.new(env_token.strip)
10
+ def self.create(token_file_path:, direct_token: nil)
11
+ env_token = `echo $GITHUB_TOKEN`.strip
12
+ tokenObj = nil
13
+ if !env_token.nil? && env_token.length > 0
14
+ tokenObj = FixedToken.new(env_token.strip)
15
+ elsif !direct_token.nil? && direct_token.length > 0
16
+ tokenObj = FixedToken.new(direct_token)
17
+ else
18
+ tokenObj = FileToken.new(token_file_path)
19
+ end
20
+ return tokenObj
14
21
  end
15
22
 
16
23
  def get(regenerate: regenerate = false)
@@ -22,7 +29,7 @@ module GitHubPr
22
29
  def initialize(token)
23
30
  @token = token
24
31
  end
25
- def get(regenerate: regenerate = false)
32
+ def get(regenerate: false)
26
33
  raise 'Can not regenerate token' if regenerate
27
34
  @token
28
35
  end
@@ -82,7 +89,7 @@ module GitHubPr
82
89
  return {:login => github_username, :password => github_password}
83
90
  end
84
91
 
85
- def get(regenerate: regenerate = false)
92
+ def get(regenerate: false)
86
93
  create_dir_if_needed()
87
94
 
88
95
  if regenerate
@@ -28,6 +28,12 @@ module GitHubPr
28
28
  end
29
29
  end
30
30
 
31
+ describe "when token" do
32
+ it "must contain assign field" do
33
+ CLI.parse(['-a', 'hovox', '-g', 'sometoken'])[:token].must_equal 'sometoken'
34
+ end
35
+ end
36
+
31
37
  end
32
38
 
33
39
  end
data/test/test_token.rb CHANGED
@@ -4,11 +4,22 @@ require 'github-pr/token'
4
4
  module GitHubPr
5
5
 
6
6
  describe Token do
7
- describe "just build test" do
8
- it "must pass if builds" do
9
- "aaa".must_equal "aaa"
7
+
8
+ describe "Token object creation" do
9
+ it "must return FixedToken object" do
10
+ token = Token.create(token_file_path:"some_path", direct_token:"direct_token")
11
+ token.class.name.must_equal "GitHubPr::FixedToken"
12
+ end
13
+
14
+ it "must return FileToken object" do
15
+ token = Token.create(token_file_path:"some_path", direct_token:nil)
16
+ token.class.name.must_equal "GitHubPr::FileToken"
10
17
  end
11
- end
18
+ end
19
+
20
+ # describe "Token object creation" do
21
+
22
+ # end
12
23
 
13
24
 
14
25
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: github-pr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.91
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hovhannes Safaryan