github_cli 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +2 -1
- data/CHANGELOG.md +5 -0
- data/Gemfile.lock +1 -1
- data/features/statistics.feature +53 -0
- data/lib/github_cli/apis/statistics.rb +37 -0
- data/lib/github_cli/command/usage.rb +1 -1
- data/lib/github_cli/command.rb +32 -50
- data/lib/github_cli/commands/statistics.rb +49 -0
- data/lib/github_cli/commands.rb +1 -0
- data/lib/github_cli/subcommands.rb +3 -0
- data/lib/github_cli/terminal.rb +1 -1
- data/lib/github_cli/thor_ext.rb +2 -1
- data/lib/github_cli/version.rb +1 -1
- data/spec/github_cli/cli_spec.rb +61 -0
- data/spec/github_cli/commands/statistics_spec.rb +35 -0
- metadata +20 -14
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
@@ -0,0 +1,53 @@
|
|
1
|
+
Feature: gcli stat
|
2
|
+
|
3
|
+
@ci-run
|
4
|
+
Scenario: Available commands
|
5
|
+
|
6
|
+
When I run `gcli stat`
|
7
|
+
Then the exit status should be 0
|
8
|
+
And the output should contain "stat contribs"
|
9
|
+
And the output should contain "stat activity"
|
10
|
+
And the output should contain "stat frequency"
|
11
|
+
And the output should contain "stat participation"
|
12
|
+
And the output should contain "stat card"
|
13
|
+
|
14
|
+
Scenario: List contributions
|
15
|
+
Given the GitHub API server:
|
16
|
+
"""
|
17
|
+
get('/repos/peter-murach/tty/stats/contributors') { status 200 }
|
18
|
+
"""
|
19
|
+
When I run `gcli stat contribs peter-murach tty`
|
20
|
+
Then the exit status should be 0
|
21
|
+
|
22
|
+
Scenario: List commit activity
|
23
|
+
Given the GitHub API server:
|
24
|
+
"""
|
25
|
+
get('/repos/peter-murach/tty/stats/commit_activity') { status 200 }
|
26
|
+
"""
|
27
|
+
When I run `gcli stat activity peter-murach tty`
|
28
|
+
Then the exit status should be 0
|
29
|
+
|
30
|
+
Scenario: List code frequency
|
31
|
+
Given the GitHub API server:
|
32
|
+
"""
|
33
|
+
get('/repos/peter-murach/tty/stats/code_frequency') { status 200 }
|
34
|
+
"""
|
35
|
+
When I run `gcli stat frequency peter-murach tty`
|
36
|
+
Then the exit status should be 0
|
37
|
+
|
38
|
+
Scenario: List participation
|
39
|
+
Given the GitHub API server:
|
40
|
+
"""
|
41
|
+
get('/repos/peter-murach/tty/stats/participation') { status 200 }
|
42
|
+
"""
|
43
|
+
When I run `gcli stat participation peter-murach tty`
|
44
|
+
Then the exit status should be 0
|
45
|
+
|
46
|
+
Scenario: List punch card
|
47
|
+
Given the GitHub API server:
|
48
|
+
"""
|
49
|
+
get('/repos/peter-murach/tty/stats/punch_card') { status 200 }
|
50
|
+
"""
|
51
|
+
When I run `gcli stat card peter-murach tty`
|
52
|
+
Then the exit status should be 0
|
53
|
+
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module GithubCLI
|
4
|
+
class Statistics < API
|
5
|
+
|
6
|
+
def self.contributors(user, repo, params, options)
|
7
|
+
output options do
|
8
|
+
github_api(options).repos.stats.contributors user, repo, params
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.activity(user, repo, params, options)
|
13
|
+
output options do
|
14
|
+
github_api(options).repos.stats.commit_activity user, repo, params
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.frequency(user, repo, params, options)
|
19
|
+
output options do
|
20
|
+
github_api(options).repos.stats.code_frequency user, repo, params
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.participation(user, repo, params, options)
|
25
|
+
output options do
|
26
|
+
github_api(options).repos.stats.participation user, repo, params
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.card(user, repo, params, options)
|
31
|
+
output options do
|
32
|
+
github_api(options).repos.stats.punch_card user, repo, params
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
end # Statistics
|
37
|
+
end # GithubCLI
|
@@ -25,7 +25,7 @@ module GithubCLI
|
|
25
25
|
# the first line is already filled in with other padding.
|
26
26
|
# length - Line length, otherwise the default terminal width is assumed.
|
27
27
|
def format_usage(options={})
|
28
|
-
synopsis = "#{flags}
|
28
|
+
synopsis = "#{flags}#{command} <subcommand> [<args>]"
|
29
29
|
indent = options[:indent] || DEFAULT_INDENT
|
30
30
|
padding = sprintf("%#{indent}s",'')
|
31
31
|
length = options[:length] || Terminal.default_width
|
data/lib/github_cli/command.rb
CHANGED
@@ -1,23 +1,14 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
|
3
3
|
module GithubCLI
|
4
|
+
|
5
|
+
# Main class with utility methods for building commands.
|
4
6
|
class Command < Thor
|
5
7
|
include Thor::Actions
|
6
8
|
|
7
|
-
API_CLASSES = %w(
|
8
|
-
c_l_i
|
9
|
-
repo download key fork hook watch collab content
|
10
|
-
issue label milestone
|
11
|
-
tag tree blob reference commit
|
12
|
-
pull
|
13
|
-
user email follower
|
14
|
-
org member team
|
15
|
-
event
|
16
|
-
search
|
17
|
-
)
|
18
|
-
|
19
9
|
HELP_COMMAND = 'help'
|
20
10
|
|
11
|
+
# Internally used command representation
|
21
12
|
class Comm < Struct.new(:namespace, :name, :desc, :usage); end
|
22
13
|
|
23
14
|
def self.output_formats
|
@@ -45,53 +36,44 @@ module GithubCLI
|
|
45
36
|
:desc => "Format of the output. Type table:h to display table horizontally."
|
46
37
|
class_option :quiet, :type => :boolean, :aliases => "-q",
|
47
38
|
:desc => "Suppress response output"
|
48
|
-
|
49
39
|
class_option :params, :type => :hash, :default => {}, :aliases => '-p',
|
50
40
|
:desc => 'Request parameters e.i per_page:100'
|
51
41
|
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
"#{basename} #{task.formatted_usage(self, true, subcommand)}"
|
56
|
-
end
|
42
|
+
def self.is_api_command?(namespace)
|
43
|
+
!%w[c_l_i command thor].include?(namespace)
|
44
|
+
end
|
57
45
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
namespace = extract_namespace(klass)
|
62
|
-
next unless is_api_command?(namespace)
|
63
|
-
namespace = "" if namespace.index(API_CLASSES.first)
|
46
|
+
def self.extract_namespace(klass)
|
47
|
+
klass.namespace.split(':').last
|
48
|
+
end
|
64
49
|
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
50
|
+
# Search for all commands
|
51
|
+
#
|
52
|
+
def self.all
|
53
|
+
commands = []
|
54
|
+
Thor::Base.subclasses.each do |klass|
|
55
|
+
namespace = extract_namespace(klass)
|
56
|
+
next unless is_api_command?(namespace)
|
57
|
+
|
58
|
+
klass.tasks.each do |task|
|
59
|
+
last_task = task.last
|
60
|
+
name = last_task.name
|
61
|
+
next if name.index HELP_COMMAND
|
62
|
+
commands << Comm.new(namespace, name, last_task.description, last_task.usage)
|
72
63
|
end
|
73
|
-
commands
|
74
|
-
end
|
75
|
-
|
76
|
-
def is_api_command?(klass)
|
77
|
-
return false unless API_CLASSES.include?(klass.to_s)
|
78
|
-
return true
|
79
|
-
end
|
80
|
-
|
81
|
-
def extract_namespace(klass)
|
82
|
-
klass.namespace.split(':').last
|
83
64
|
end
|
65
|
+
commands
|
66
|
+
end
|
84
67
|
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
command_token ? command_token.namespace : '<command>'
|
68
|
+
# Decide whether to show specific command or display placeholder
|
69
|
+
#
|
70
|
+
def self.command_to_show(command)
|
71
|
+
command_token = Command.all.find do |cmd|
|
72
|
+
cmd_index = command.index('<') || -1
|
73
|
+
namespace = cmd.namespace
|
74
|
+
!namespace.empty? && command[0..cmd_index].include?(namespace)
|
93
75
|
end
|
94
|
-
|
76
|
+
command_token ? command_token.namespace : '<command>'
|
95
77
|
end
|
96
78
|
|
97
79
|
end # Command
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module GithubCLI
|
4
|
+
class Commands::Statistics < Command
|
5
|
+
|
6
|
+
namespace :stat
|
7
|
+
|
8
|
+
desc 'contribs <user> <repo>', 'Get contributors list with additions, deletions, and commit counts'
|
9
|
+
def contribs(user, repo)
|
10
|
+
global_options = options.dup
|
11
|
+
params = options[:params].dup
|
12
|
+
Util.hash_without!(global_options, params.keys + ['params'])
|
13
|
+
Statistics.contributors(user, repo, params, global_options)
|
14
|
+
end
|
15
|
+
|
16
|
+
desc 'activity <user> <repo>', 'Get the last year of commit activity data'
|
17
|
+
def activity(user, repo)
|
18
|
+
global_options = options.dup
|
19
|
+
params = options[:params].dup
|
20
|
+
Util.hash_without!(global_options, params.keys + ['params'])
|
21
|
+
Statistics.activity(user, repo, params, global_options)
|
22
|
+
end
|
23
|
+
|
24
|
+
desc 'frequency <user> <repo>', 'Get the number of additions and deletions per week'
|
25
|
+
def frequency(user, repo)
|
26
|
+
global_options = options.dup
|
27
|
+
params = options[:params].dup
|
28
|
+
Util.hash_without!(global_options, params.keys + ['params'])
|
29
|
+
Statistics.frequency(user, repo, params, global_options)
|
30
|
+
end
|
31
|
+
|
32
|
+
desc 'participation <user> <repo>', 'Get the weekly commit count for the repo owner and everyone else'
|
33
|
+
def participation(user, repo)
|
34
|
+
global_options = options.dup
|
35
|
+
params = options[:params].dup
|
36
|
+
Util.hash_without!(global_options, params.keys + ['params'])
|
37
|
+
Statistics.participation(user, repo, params, global_options)
|
38
|
+
end
|
39
|
+
|
40
|
+
desc 'card <user> <repo>', 'Get the number of commits per hour in each day'
|
41
|
+
def card(user, repo)
|
42
|
+
global_options = options.dup
|
43
|
+
params = options[:params].dup
|
44
|
+
Util.hash_without!(global_options, params.keys + ['params'])
|
45
|
+
Statistics.card(user, repo, params, global_options)
|
46
|
+
end
|
47
|
+
|
48
|
+
end # Commands::Statistics
|
49
|
+
end # GithubCLI
|
data/lib/github_cli/commands.rb
CHANGED
@@ -28,6 +28,7 @@ module GithubCLI
|
|
28
28
|
autoload :Repositories, 'github_cli/commands/repositories'
|
29
29
|
autoload :Search, 'github_cli/commands/search'
|
30
30
|
autoload :Starring, 'github_cli/commands/starring'
|
31
|
+
autoload :Statistics, 'github_cli/commands/statistics'
|
31
32
|
autoload :Statuses, 'github_cli/commands/statuses'
|
32
33
|
autoload :Tags, 'github_cli/commands/tags'
|
33
34
|
autoload :Teams, 'github_cli/commands/teams'
|
@@ -81,6 +81,9 @@ module GithubCLI
|
|
81
81
|
desc "star", "Leverage Starring API"
|
82
82
|
subcommand "star", GithubCLI::Commands::Starring
|
83
83
|
|
84
|
+
desc "stat", "Leverage Statistics API"
|
85
|
+
subcommand "stat", GithubCLI::Commands::Statistics
|
86
|
+
|
84
87
|
desc "status", "Leverage Statuses API"
|
85
88
|
subcommand "status", GithubCLI::Commands::Statuses
|
86
89
|
|
data/lib/github_cli/terminal.rb
CHANGED
@@ -72,7 +72,7 @@ module GithubCLI
|
|
72
72
|
GithubCLI.ui.info "#{exec_name}: '#{cmd}' is not a #{exec_name} command. See '#{exec_name} --help'."
|
73
73
|
end
|
74
74
|
|
75
|
-
def print_usage(flags, command
|
75
|
+
def print_usage(flags, command)
|
76
76
|
GithubCLI.ui.info <<-TEXT
|
77
77
|
|
78
78
|
#{GithubCLI.program_name}
|
data/lib/github_cli/thor_ext.rb
CHANGED
@@ -12,7 +12,8 @@ class Thor
|
|
12
12
|
end
|
13
13
|
list.sort!{ |a,b| a[0] <=> b[0] }
|
14
14
|
|
15
|
-
|
15
|
+
command = subcommand ? list[0][0] : '<command>'
|
16
|
+
GithubCLI::Terminal.print_usage(global_flags, command)
|
16
17
|
|
17
18
|
shell.say "Commands:"
|
18
19
|
shell.print_table(list, :indent => 3, :truncate => true)
|
data/lib/github_cli/version.rb
CHANGED
data/spec/github_cli/cli_spec.rb
CHANGED
@@ -1,5 +1,66 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe GithubCLI::CLI do
|
4
|
+
let(:object) { described_class }
|
5
|
+
let(:config) { stub(:config).as_null_object }
|
6
|
+
let(:ui) { stub(:ui) }
|
4
7
|
|
8
|
+
before {
|
9
|
+
GithubCLI.stub(:ui).and_return(ui)
|
10
|
+
GithubCLI.stub(:config).and_return(config)
|
11
|
+
}
|
12
|
+
|
13
|
+
context 'whoami' do
|
14
|
+
let(:config) { {'user.login' => nil } }
|
15
|
+
|
16
|
+
it 'checks config for user info' do
|
17
|
+
ui.should_receive(:info).with(/Not authed/)
|
18
|
+
subject.invoke 'whoami', []
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
context 'init' do
|
23
|
+
it 'confirms config creation' do
|
24
|
+
ui.should_receive(:confirm).with(/Writing new configuration file/)
|
25
|
+
File.stub(:exists?).and_return(false)
|
26
|
+
subject.invoke "init", []
|
27
|
+
end
|
28
|
+
|
29
|
+
it 'aborts if config already exists' do
|
30
|
+
ui.should_receive(:error).with(/Not overwritting existing/)
|
31
|
+
File.stub(:exists?).and_return(true)
|
32
|
+
expect { subject.invoke "init", [] }.to raise_error(SystemExit)
|
33
|
+
end
|
34
|
+
|
35
|
+
it 'allows to overwrite existing config' do
|
36
|
+
ui.should_receive(:confirm).with(/Writing new configuration file/)
|
37
|
+
File.stub(:exists?).and_return(true)
|
38
|
+
subject.invoke "init", [], {:force => true}
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
context 'config' do
|
43
|
+
let(:name) { 'core.editor' }
|
44
|
+
|
45
|
+
before {
|
46
|
+
File.stub(:exists?).and_return(true)
|
47
|
+
GithubCLI::Terminal.stub(:line)
|
48
|
+
}
|
49
|
+
|
50
|
+
it 'aborts without config file' do
|
51
|
+
ui.should_receive(:error).with(/Configuration file does not exist/)
|
52
|
+
File.stub(:exists?).and_return(false)
|
53
|
+
expect { subject.invoke "config", [] }.to raise_error(SystemExit)
|
54
|
+
end
|
55
|
+
|
56
|
+
it 'prints option for list flag' do
|
57
|
+
GithubCLI::Terminal.should_receive(:print_config).with(name)
|
58
|
+
subject.invoke "config", [name], {:list => true}
|
59
|
+
end
|
60
|
+
|
61
|
+
it 'print whole config without parameters' do
|
62
|
+
GithubCLI::Terminal.should_receive(:print_config)
|
63
|
+
subject.invoke "config", []
|
64
|
+
end
|
65
|
+
end
|
5
66
|
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
describe GithubCLI::Commands::Statistics do
|
6
|
+
let(:format) { {'format' => 'table'} }
|
7
|
+
let(:user) { 'peter-murach' }
|
8
|
+
let(:repo) { 'github_cli' }
|
9
|
+
let(:api_class) { GithubCLI::Statistics }
|
10
|
+
|
11
|
+
it "invokes stat:contribs" do
|
12
|
+
api_class.should_receive(:contributors).with(user, repo, {}, format)
|
13
|
+
subject.invoke "stat:contribs", [user, repo]
|
14
|
+
end
|
15
|
+
|
16
|
+
it "invokes stat:activity" do
|
17
|
+
api_class.should_receive(:activity).with(user, repo, {}, format)
|
18
|
+
subject.invoke "stat:activity", [user, repo]
|
19
|
+
end
|
20
|
+
|
21
|
+
it "invokes stat:frequency" do
|
22
|
+
api_class.should_receive(:frequency).with(user, repo, {}, format)
|
23
|
+
subject.invoke "stat:frequency", [user, repo]
|
24
|
+
end
|
25
|
+
|
26
|
+
it "invokes stat:participation" do
|
27
|
+
api_class.should_receive(:participation).with(user, repo, {}, format)
|
28
|
+
subject.invoke "stat:participation", [user, repo]
|
29
|
+
end
|
30
|
+
|
31
|
+
it "invokes stat:card" do
|
32
|
+
api_class.should_receive(:card).with(user, repo, {}, format)
|
33
|
+
subject.invoke "stat:card", [user, repo]
|
34
|
+
end
|
35
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: github_cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-06-
|
12
|
+
date: 2013-06-09 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: github_api
|
16
|
-
requirement: &
|
16
|
+
requirement: &2156012000 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0.10'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2156012000
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &2156010900 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2156010900
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: aruba
|
38
|
-
requirement: &
|
38
|
+
requirement: &2156003180 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2156003180
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
|
-
requirement: &
|
49
|
+
requirement: &2156002240 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2156002240
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: communist
|
60
|
-
requirement: &
|
60
|
+
requirement: &2156001040 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2156001040
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: ronn
|
71
|
-
requirement: &
|
71
|
+
requirement: &2155997580 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *2155997580
|
80
80
|
description: CLI-based access to GitHub API v3
|
81
81
|
email:
|
82
82
|
- ''
|
@@ -128,6 +128,7 @@ files:
|
|
128
128
|
- features/search.feature
|
129
129
|
- features/search_commands.feature
|
130
130
|
- features/starring.feature
|
131
|
+
- features/statistics.feature
|
131
132
|
- features/statuses.feature
|
132
133
|
- features/support/env.rb
|
133
134
|
- features/support/hooks.rb
|
@@ -168,6 +169,7 @@ files:
|
|
168
169
|
- lib/github_cli/apis/repository.rb
|
169
170
|
- lib/github_cli/apis/search.rb
|
170
171
|
- lib/github_cli/apis/starring.rb
|
172
|
+
- lib/github_cli/apis/statistics.rb
|
171
173
|
- lib/github_cli/apis/status.rb
|
172
174
|
- lib/github_cli/apis/tag.rb
|
173
175
|
- lib/github_cli/apis/team.rb
|
@@ -206,6 +208,7 @@ files:
|
|
206
208
|
- lib/github_cli/commands/repositories.rb
|
207
209
|
- lib/github_cli/commands/search.rb
|
208
210
|
- lib/github_cli/commands/starring.rb
|
211
|
+
- lib/github_cli/commands/statistics.rb
|
209
212
|
- lib/github_cli/commands/statuses.rb
|
210
213
|
- lib/github_cli/commands/tags.rb
|
211
214
|
- lib/github_cli/commands/teams.rb
|
@@ -296,6 +299,7 @@ files:
|
|
296
299
|
- spec/github_cli/commands/references_spec.rb
|
297
300
|
- spec/github_cli/commands/repositories_spec.rb
|
298
301
|
- spec/github_cli/commands/starring_spec.rb
|
302
|
+
- spec/github_cli/commands/statistics_spec.rb
|
299
303
|
- spec/github_cli/commands/statuses_spec.rb
|
300
304
|
- spec/github_cli/commands/tags_spec.rb
|
301
305
|
- spec/github_cli/commands/teams_spec.rb
|
@@ -379,6 +383,7 @@ test_files:
|
|
379
383
|
- features/search.feature
|
380
384
|
- features/search_commands.feature
|
381
385
|
- features/starring.feature
|
386
|
+
- features/statistics.feature
|
382
387
|
- features/statuses.feature
|
383
388
|
- features/support/env.rb
|
384
389
|
- features/support/hooks.rb
|
@@ -417,6 +422,7 @@ test_files:
|
|
417
422
|
- spec/github_cli/commands/references_spec.rb
|
418
423
|
- spec/github_cli/commands/repositories_spec.rb
|
419
424
|
- spec/github_cli/commands/starring_spec.rb
|
425
|
+
- spec/github_cli/commands/statistics_spec.rb
|
420
426
|
- spec/github_cli/commands/statuses_spec.rb
|
421
427
|
- spec/github_cli/commands/tags_spec.rb
|
422
428
|
- spec/github_cli/commands/teams_spec.rb
|