uspec 0.2.2 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/uspec/result.rb +6 -40
- data/lib/uspec/version.rb +1 -1
- data/uspec.gemspec +2 -0
- data/uspec/result_spec.rb +1 -1
- metadata +15 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 37c36554e93d2f086beaa00114b033946c8d7fd059ad2436b08677321087e522
|
4
|
+
data.tar.gz: 7b3fad4db3c6b602a338d29d98ffdfeb35b8a1f7bdf254595cb336900a623e0d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 79f67326d2973ecf2a29868d9630cfae54d1cbd0f8f69458d2794e695b85a40db2876331b71a14a648235e7f0b5581a93249d0b4bfa8c8acfab899112655f4ae
|
7
|
+
data.tar.gz: 8b4c7102bdfd0093b01c8a23bb8afd0fb098b74411d3aa9172a0c2515186456a9a925db16d51fe653a9955f1353b075b5cce5886e89df80da3ecde1a349f3b5d
|
data/lib/uspec/result.rb
CHANGED
@@ -31,7 +31,7 @@ module Uspec
|
|
31
31
|
red('Unknown Result'), vspace,
|
32
32
|
hspace, 'Spec did not return a boolean value ', newline,
|
33
33
|
hspace, 'in spec at ', source.first, vspace,
|
34
|
-
hspace, red(
|
34
|
+
hspace, red(subklassinfo), inspector, newline
|
35
35
|
].join
|
36
36
|
end
|
37
37
|
end
|
@@ -43,18 +43,18 @@ module Uspec
|
|
43
43
|
end
|
44
44
|
|
45
45
|
def message
|
46
|
-
"#{red
|
46
|
+
"#{red subklassinfo}#{raw.message}"
|
47
47
|
end
|
48
48
|
|
49
|
-
def
|
50
|
-
|
49
|
+
def subklassinfo
|
50
|
+
"#{handler.subklassinfo}: "
|
51
51
|
end
|
52
52
|
|
53
53
|
# Attempts to inspect an object
|
54
54
|
def inspector
|
55
|
-
|
55
|
+
handler.inspector!
|
56
56
|
rescue Exception => error
|
57
|
-
return
|
57
|
+
return handler.simple_inspector if error.message.include? handler.get_id
|
58
58
|
|
59
59
|
error_file, error_line, _ = error.backtrace[4].split ?:
|
60
60
|
|
@@ -76,40 +76,6 @@ module Uspec
|
|
76
76
|
MSG
|
77
77
|
end
|
78
78
|
|
79
|
-
# Returns the class of the object if it isn't already a class
|
80
|
-
def klass
|
81
|
-
Module === raw ? raw : ancestor_klasses[1]
|
82
|
-
end
|
83
|
-
|
84
|
-
# Returns the superclass of the object
|
85
|
-
def superklass
|
86
|
-
ancestor_klasses[2]
|
87
|
-
end
|
88
|
-
|
89
|
-
# Gets the object ID of an object
|
90
|
-
def get_id
|
91
|
-
raw.__id__.to_s(16) rescue 0
|
92
|
-
end
|
93
|
-
|
94
|
-
# Obtain the singleton class of an object
|
95
|
-
def singleton
|
96
|
-
@singleton ||= (class << raw; self; end) rescue raw.class
|
97
|
-
end
|
98
|
-
|
99
|
-
def ancestor_klasses
|
100
|
-
@ancestor_klasses ||= ancestors.select{|a| a.is_a? Class}
|
101
|
-
end
|
102
|
-
|
103
|
-
# Collects the ancestors of an object
|
104
|
-
def ancestors
|
105
|
-
@ancestors ||= safe_send singleton, :ancestors
|
106
|
-
end
|
107
|
-
|
108
|
-
# Works around BasicObject and other objects that are missing/overwrite important methods
|
109
|
-
def safe_send object, method, *args, &block
|
110
|
-
(Module === object ? Module : Object).instance_method(method).bind(object).call(*args, &block)
|
111
|
-
end
|
112
|
-
|
113
79
|
def inspect
|
114
80
|
"#{self.class} for `#{spec}` -> #{pretty}"
|
115
81
|
end
|
data/lib/uspec/version.rb
CHANGED
data/uspec.gemspec
CHANGED
@@ -22,6 +22,8 @@ Gem::Specification.new do |gem|
|
|
22
22
|
# technically should still work in 2.0 but some of the test suite won't pass
|
23
23
|
gem.required_ruby_version = ">= 2.1"
|
24
24
|
|
25
|
+
gem.add_dependency "that_object_is_so_basic", "~> 0.0.5"
|
26
|
+
|
25
27
|
gem.add_development_dependency "pry"
|
26
28
|
gem.add_development_dependency "pry-doc"
|
27
29
|
end
|
data/uspec/result_spec.rb
CHANGED
@@ -15,7 +15,7 @@ obj = TestObject.new
|
|
15
15
|
|
16
16
|
spec "ensure BasicObject subclasses work" do
|
17
17
|
result = Uspec::Result.new "BasicObject Subclass Result", obj, []
|
18
|
-
expected = "#<TestObject:"
|
18
|
+
expected = "#<BasicObject/TestObject:"
|
19
19
|
actual = result.pretty
|
20
20
|
actual.include?(expected) || result.inspector
|
21
21
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: uspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Anthony M. Cook
|
@@ -10,6 +10,20 @@ bindir: bin
|
|
10
10
|
cert_chain: []
|
11
11
|
date: 2019-06-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: that_object_is_so_basic
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.0.5
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.0.5
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: pry
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|