mumukit-bridge 4.0.1 → 4.2.0

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: ccac864d8b79e76d68f46bc1cd2aa01669373d8a6968e55589ed3dfde7f994cd
4
- data.tar.gz: 397cf74627c7c06521714d4b780091d8472156467f8bd042301fe1ca3aa2b262
3
+ metadata.gz: ac1d1e19aac4a79b9703fd2d4919cf7d663cebc7537199599fb817f30bf8d282
4
+ data.tar.gz: 3a084c785d42f2cd9bf4e0599d1c823f0b8e8aed870afaedfb2935f25f8ed8b2
5
5
  SHA512:
6
- metadata.gz: 594d5cf01ea684ba7aee0ccb06d390bedb1179625be3924716de887431efe91313bd14972b5fa38bb8d1eb4fdec67c7be80a88954a36df762f0807c4bd43ba0d
7
- data.tar.gz: f3d2c90010fbfb8c71b5677046db388adf5e4ec44709ce482d572608bed34ad68722ae36f9e822748e978201097cdbf5b6b5117e97a64403977120b628119480
6
+ metadata.gz: 98b06b1ebfda1dce7567d0f5301a83275ef52a03778e7bde2f82e7f40eb987f78ac0c2cb39671a2607fbd29a09fe490c48c6d4cff478db3d49597f57ccf05650
7
+ data.tar.gz: 6919efa64a73635d7e2b6b5c1c30775c555f04bd4f20e4d554df835f8355c6189df4b608874ae8c6a61f90cc05ed4e5ecfe0172fc23e4eca0fd7484c3032acc9
@@ -1,10 +1,12 @@
1
1
  module Mumukit
2
2
  module Bridge
3
3
  class Bibliotheca
4
- attr_accessor :url
4
+ attr_accessor :url, :headers
5
5
 
6
- def initialize(url)
7
- @url = url
6
+ def initialize(test_runner_url, timeout=10, headers={})
7
+ @test_runner_url = test_runner_url
8
+ @timeout = timeout
9
+ @headers = headers
8
10
  end
9
11
 
10
12
  def guides
@@ -40,7 +42,7 @@ module Mumukit
40
42
  end
41
43
 
42
44
  def get(path)
43
- JSON.parse RestClient.get("#{url}/#{path}")
45
+ JSON.parse RestClient.get("#{url}/#{path}", self.headers)
44
46
  end
45
47
  end
46
48
  end
@@ -39,10 +39,18 @@ module Mumukit::Bridge
39
39
  private
40
40
 
41
41
  def parse_test_results(results)
42
- results.map { |it| {
43
- title: it['title'],
44
- status: it['status'].to_sym,
45
- result: it['result']} }
42
+ results.map do |it|
43
+ { summary: safe_compact(it['summary'])&.symbolize_keys.presence }
44
+ .compact
45
+ .merge(
46
+ title: it['title'],
47
+ status: it['status'].to_sym,
48
+ result: it['result'])
49
+ end
50
+ end
51
+
52
+ def safe_compact(hash)
53
+ hash.try { |it| it.transform_values(&:presence).compact rescue nil }
46
54
  end
47
55
  end
48
56
 
@@ -18,7 +18,7 @@ module Mumukit
18
18
  # {test: string, extra: string, content: string, expectations: [{binding:string, inspection: string})]}
19
19
  # Returns a hash
20
20
  # {result: string,
21
- # test_results: [{title:string, status:symbol, result:string}],
21
+ # test_results: [{title:string, status:symbol, result:string, summary:hash}],
22
22
  # status: :passed|:failed|:errored|:aborted|:passed_with_warnings,
23
23
  # expectation_results: [{binding:string, inspection:string, result:symbol}],
24
24
  # feedback: string}
@@ -1,5 +1,5 @@
1
1
  module Mumukit
2
2
  module Bridge
3
- VERSION = '4.0.1'
3
+ VERSION = '4.2.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mumukit-bridge
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.1
4
+ version: 4.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Franco Leonardo Bulgarelli
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-08 00:00:00.000000000 Z
11
+ date: 2023-03-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,42 +16,42 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.7'
19
+ version: '2.0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.7'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '12.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '12.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '2.99'
47
+ version: '3.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '2.99'
54
+ version: '3.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rest-client
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -82,7 +82,7 @@ dependencies:
82
82
  version: '1.10'
83
83
  description:
84
84
  email:
85
- - flbulgarelli@yahoo.com.ar
85
+ - franco@mumuki.org
86
86
  executables: []
87
87
  extensions: []
88
88
  extra_rdoc_files: []
@@ -95,7 +95,7 @@ files:
95
95
  - lib/mumukit/bridge/runner/response_type.rb
96
96
  - lib/mumukit/bridge/thesaurus.rb
97
97
  - lib/mumukit/bridge/version.rb
98
- homepage: http://github.com/uqbar-project/mumukit-bridge
98
+ homepage: http://github.com/mumuki/mumukit-bridge
99
99
  licenses:
100
100
  - MIT
101
101
  metadata: {}
@@ -114,8 +114,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
114
114
  - !ruby/object:Gem::Version
115
115
  version: '0'
116
116
  requirements: []
117
- rubyforge_project:
118
- rubygems_version: 2.7.7
117
+ rubygems_version: 3.1.6
119
118
  signing_key:
120
119
  specification_version: 4
121
120
  summary: Library for connecting to a Mumuki test runner