getting_dumped 0.0.3.0 → 0.0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/bin/getting_dumped_server +1 -0
- data/lib/getting_dumped.rb +43 -48
- data/lib/getting_dumped/app.rb +5 -3
- data/lib/getting_dumped/migrations/create_tables.rb +3 -1
- data/lib/getting_dumped/models.rb +3 -3
- metadata +54 -41
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 8907f7260acec6952560517808d3eac832551859422d1bb1a6c568a7ab7c7fdb
|
4
|
+
data.tar.gz: 1be79164d5b68af3431fe24432ea0c7b9e52746ce488bcd4424320f8281795b6
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c2485c4bd6f83a5ef0d8995a1610db16cfa6d901eb707eaf4490ff61a78801d8b5e2533904a62fcec98bcf991038abdffee247ca67b1be399d2c07763f2e3789
|
7
|
+
data.tar.gz: 8d462d6506e101a32aa2cc92571d19749a24d358ed11eae06f1c1b974cb9adf87d9e4b7c7aa40e5f9762934c69ac40ef6950286a7556a339297621daf76b83a3
|
data/bin/getting_dumped_server
CHANGED
data/lib/getting_dumped.rb
CHANGED
@@ -1,73 +1,68 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'rspec'
|
2
|
-
require 'rspec/core/formatters/base_formatter'
|
3
4
|
require 'getting_dumped/migrations/create_tables'
|
4
5
|
|
6
|
+
class GettingDumped
|
7
|
+
RSpec::Core::Formatters.register self, :example_passed, :example_pending, :example_failed
|
5
8
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
@run_started_at = Time.now
|
10
|
-
@run = DB[:runs]
|
9
|
+
def initialize(output)
|
10
|
+
@output = output
|
11
|
+
@run = create_run
|
11
12
|
@example_db = DB[:examples]
|
12
|
-
@success = true
|
13
|
-
@run_id = @run.insert(:started_at => Time.now)
|
14
|
-
end
|
15
|
-
|
16
|
-
def start(count)
|
17
|
-
super(count)
|
18
|
-
end
|
19
|
-
|
20
|
-
def example_started(example)
|
21
|
-
super(example)
|
22
13
|
end
|
23
14
|
|
24
15
|
def example_pending(example)
|
25
|
-
super(example)
|
26
16
|
save_example(example)
|
27
17
|
end
|
28
18
|
|
29
19
|
def example_passed(example)
|
30
|
-
super(example)
|
31
20
|
save_example(example)
|
32
21
|
end
|
33
22
|
|
34
23
|
def example_failed(example)
|
35
|
-
super(example)
|
36
24
|
save_example(example)
|
37
|
-
@success = false
|
38
25
|
end
|
39
26
|
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
)
|
27
|
+
private
|
28
|
+
|
29
|
+
attr_reader :run
|
30
|
+
|
31
|
+
def create_run
|
32
|
+
run = DB[:runs]
|
33
|
+
run.insert(started_at: Time.now)
|
48
34
|
end
|
49
35
|
|
50
|
-
|
36
|
+
def extract_exception(metadata)
|
37
|
+
return [nil, nil] if metadata.status != :failed
|
38
|
+
|
39
|
+
exception = metadata[:exception]
|
40
|
+
backtrace = exception.backtrace
|
41
|
+
|
42
|
+
[exception, backtrace]
|
43
|
+
end
|
51
44
|
|
52
|
-
def
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
exception
|
61
|
-
|
62
|
-
|
63
|
-
:status => metadata[:status],
|
64
|
-
:run_id => @run_id,
|
65
|
-
:run_time => metadata[:run_time],
|
66
|
-
:started_at => DateTime.parse(metadata[:started_at].to_s),
|
67
|
-
:finished_at => DateTime.parse(metadata[:finished_at].to_s),
|
68
|
-
:exception => exception.to_s,
|
69
|
-
:backtrace => backtrace.to_s
|
70
|
-
)
|
45
|
+
def write_to_db(metadata, description, exception, backtrace)
|
46
|
+
@example_db.insert(
|
47
|
+
name: description,
|
48
|
+
status: metadata[:status],
|
49
|
+
run_id: run,
|
50
|
+
run_time: metadata[:run_time],
|
51
|
+
started_at: DateTime.parse(metadata[:started_at].to_s),
|
52
|
+
finished_at: DateTime.parse(metadata[:finished_at].to_s),
|
53
|
+
exception: exception.to_s,
|
54
|
+
backtrace: backtrace.to_s
|
55
|
+
)
|
71
56
|
end
|
72
57
|
|
58
|
+
def save_example(notification)
|
59
|
+
metadata = notification.example.execution_result
|
60
|
+
exception, backtrace = extract_exception(metadata)
|
61
|
+
write_to_db(
|
62
|
+
metadata,
|
63
|
+
notification.example.full_description,
|
64
|
+
exception,
|
65
|
+
backtrace
|
66
|
+
)
|
67
|
+
end
|
73
68
|
end
|
data/lib/getting_dumped/app.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'getting_dumped'
|
4
|
+
require 'sinatra'
|
3
5
|
|
4
6
|
class GettingDumpedServer < Sinatra::Application
|
5
7
|
get '/runs' do
|
@@ -8,7 +10,7 @@ class GettingDumpedServer < Sinatra::Application
|
|
8
10
|
end
|
9
11
|
|
10
12
|
get '/run/:id' do
|
11
|
-
@examples = DB[:examples].where(
|
13
|
+
@examples = DB[:examples].where(run_id: params[:id]).all
|
12
14
|
erb :examples
|
13
15
|
end
|
14
16
|
end
|
metadata
CHANGED
@@ -1,149 +1,162 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: getting_dumped
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.4.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Arvind Kunday
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2019-06-23 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
14
|
+
name: rake
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
|
-
name:
|
28
|
+
name: rspec
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ">="
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ">="
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: sequel
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - ">="
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - ">="
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
56
|
+
name: sinatra
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- -
|
59
|
+
- - ">="
|
68
60
|
- !ruby/object:Gem::Version
|
69
61
|
version: '0'
|
70
62
|
type: :runtime
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- -
|
66
|
+
- - ">="
|
76
67
|
- !ruby/object:Gem::Version
|
77
68
|
version: '0'
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
|
-
name: sinatra
|
70
|
+
name: sinatra-snap
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- -
|
73
|
+
- - ">="
|
84
74
|
- !ruby/object:Gem::Version
|
85
75
|
version: '0'
|
86
76
|
type: :runtime
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- -
|
80
|
+
- - ">="
|
92
81
|
- !ruby/object:Gem::Version
|
93
82
|
version: '0'
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
|
-
name:
|
84
|
+
name: sqlite3
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- -
|
87
|
+
- - ">="
|
100
88
|
- !ruby/object:Gem::Version
|
101
89
|
version: '0'
|
102
90
|
type: :runtime
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- -
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: byebug
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rubocop
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
108
123
|
- !ruby/object:Gem::Version
|
109
124
|
version: '0'
|
110
125
|
description: the historical RSpec run formatter
|
111
126
|
email:
|
112
|
-
-
|
127
|
+
- arvind@kunday.com
|
113
128
|
executables:
|
114
129
|
- getting_dumped_server
|
115
130
|
extensions: []
|
116
131
|
extra_rdoc_files: []
|
117
132
|
files:
|
133
|
+
- bin/getting_dumped_server
|
118
134
|
- lib/getting_dumped.rb
|
119
135
|
- lib/getting_dumped/app.rb
|
120
136
|
- lib/getting_dumped/migrations/create_tables.rb
|
121
137
|
- lib/getting_dumped/models.rb
|
122
138
|
- lib/getting_dumped/views/examples.erb
|
123
139
|
- lib/getting_dumped/views/runs.erb
|
124
|
-
- bin/getting_dumped_server
|
125
140
|
homepage: https://github.com/kunday/getting_dumped
|
126
141
|
licenses: []
|
142
|
+
metadata: {}
|
127
143
|
post_install_message:
|
128
144
|
rdoc_options: []
|
129
145
|
require_paths:
|
130
146
|
- lib
|
131
147
|
required_ruby_version: !ruby/object:Gem::Requirement
|
132
|
-
none: false
|
133
148
|
requirements:
|
134
|
-
- -
|
149
|
+
- - ">="
|
135
150
|
- !ruby/object:Gem::Version
|
136
151
|
version: '0'
|
137
152
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
138
|
-
none: false
|
139
153
|
requirements:
|
140
|
-
- -
|
154
|
+
- - ">="
|
141
155
|
- !ruby/object:Gem::Version
|
142
156
|
version: '0'
|
143
157
|
requirements: []
|
144
|
-
|
145
|
-
rubygems_version: 1.8.25
|
158
|
+
rubygems_version: 3.0.3
|
146
159
|
signing_key:
|
147
|
-
specification_version:
|
160
|
+
specification_version: 4
|
148
161
|
summary: the historical RSpec run formatter
|
149
162
|
test_files: []
|