cobench 0.0.24 → 0.0.27

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
  SHA256:
3
- metadata.gz: c88b2884af1c5f379f0ffc146188ae2b1c7ab4ffd1fa6690a1bebc1120b2f848
4
- data.tar.gz: 4ccd4da7ea79c1f0b121c289a28def7b4decbb6b4792856f59bc0b4ca8cd87d9
3
+ metadata.gz: 47f3f37318c2232bf63618919be537f4e62376cde764593380403037e3d9f524
4
+ data.tar.gz: 62c34a1ee6af530921f33ecb1b7c66c88526b9fca3153ab9b76c0e91277aa0ad
5
5
  SHA512:
6
- metadata.gz: 884a2cf5e5bff6d1050a94e2abc09ea4c4c96d45144a529ae7e7a9c4b86382ce8ec73841f6119a0c5a42b96896105658b1436e6204ffb99e9bf80733f49204da
7
- data.tar.gz: 9a55303410d004305736bcafa56e61c10e323fe698f7c59b210dbb8135e9c5b21836ae9fc29057b26c31cb3761e0634f3fc94230da830ef2237598ad6a722843
6
+ metadata.gz: cb1947fc4eca6c72ca3ee7b74aa67d179511e6e331214946ed8b1d8091939f0d4958bb36657c0128d581b25ab9651e3140fd96ec63e8bf2866765022445a3887
7
+ data.tar.gz: 429128c6e5c1110ee0b5af6b8811e24a1984f03a435abf7ff3b0f25d7d8123ece3772afe5e39ea703a6ea94a7888ef62aa32181859b494224c7991511503e535
data/assets/index.xsl CHANGED
@@ -173,8 +173,7 @@ SOFTWARE.
173
173
  </xsl:template>
174
174
  <xsl:template match="cobench/titles">
175
175
  <tr>
176
- <th/>
177
- <th/>
176
+ <th colspan="2"/>
178
177
  <xsl:for-each select="title[generate-id() = generate-id(key('titles', .)[1])]">
179
178
  <xsl:sort select="."/>
180
179
  <th class="sorter num">
data/bin/cobench CHANGED
@@ -74,6 +74,16 @@ end
74
74
  Encoding.default_external = Encoding::UTF_8
75
75
  Encoding.default_internal = Encoding::UTF_8
76
76
 
77
+ def div(a, b)
78
+ return 0 if b == 0
79
+ a / b
80
+ end
81
+
82
+ def actual(ms)
83
+ return ms[:actual] if ms.key?(:actual)
84
+ ms[:total]
85
+ end
86
+
77
87
  def build_xml(opts, loog)
78
88
  if opts.token?
79
89
  api = Octokit::Client.new(:access_token => opts[:token])
@@ -150,11 +160,11 @@ def build_xml(opts, loog)
150
160
  end
151
161
  averages = {
152
162
  'HpP': {
153
- f: lambda { |ms| ms['HoC'][:total] / ms['Pulls'][:total] },
163
+ f: lambda { |ms| div(actual(ms['HoC']), actual(ms['Pulls'])) },
154
164
  title: 'HoC per Pull'
155
165
  },
156
166
  'HpC': {
157
- f: lambda { |ms| ms['HoC'][:total] / ms['Commits'][:total] },
167
+ f: lambda { |ms| div(actual(ms['HoC']), actual(ms['Commits'])) },
158
168
  title: 'HoC per Commit'
159
169
  }
160
170
  }
@@ -185,7 +195,7 @@ def build_xml(opts, loog)
185
195
  next if t == 'Score'
186
196
  next if averages.key?(t)
187
197
  xml.w(id: t) do
188
- xml.text(data.values.map { |ms| ms[t][:total] }.inject(&:+))
198
+ xml.text(data.values.map { |ms| actual(ms[t]) }.inject(&:+))
189
199
  end
190
200
  end
191
201
  end
@@ -193,8 +203,8 @@ def build_xml(opts, loog)
193
203
  data.map { |_, ms| ms.keys }.flatten.uniq.each do |t|
194
204
  next if t == 'Score'
195
205
  xml.w(id: t) do
196
- vals = data.values.map { |ms| ms[t][:total] }.select { |v| v > 0 }
197
- xml.text(vals.inject(&:+) / vals.count)
206
+ vals = data.values.map { |ms| actual(ms[t]) }.select { |v| v > 0 }
207
+ xml.text(div(vals.inject(&:+), vals.count))
198
208
  end
199
209
  end
200
210
  end
@@ -23,5 +23,5 @@
23
23
  # Copyright:: Copyright (c) 2022 Yegor Bugayenko
24
24
  # License:: MIT
25
25
  module Cobench
26
- VERSION = '0.0.24'.freeze
26
+ VERSION = '0.0.27'.freeze
27
27
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cobench
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.24
4
+ version: 0.0.27
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yegor Bugayenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-09-01 00:00:00.000000000 Z
11
+ date: 2022-09-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: backtrace