Skip to content

Commit c5738e2

Browse files
aardvark179eregon
authored andcommitted
Tidy up specs.
1 parent e79ea4d commit c5738e2

File tree

2 files changed

+9
-17
lines changed

2 files changed

+9
-17
lines changed

doc/contributor/interop_implicit_api.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,9 @@ Format: `Ruby code` sends `InteropLibrary message`
2020
- `foreign_object.nil?` sends `isNull(foreign_object)`
2121
- `foreign_object.size` sends `getArraySize(foreign_object)`
2222
- `foreign_object.keys` sends `getMembers(foreign_object)`
23-
- `foreign_object.method_name` sends `readMember(foreign_object, method_name)` if member is not invocable
2423
- `foreign_object.method_name` sends `invokeMember(foreign_object, method_name)` if member is invocable
25-
- `foreign_object.method_name` sends `readMember(foreign_object, method_name)` if member is readable and not invokable
26-
- `foreign_object.method_name` sends `readMember(foreign_object, method_name)`
24+
- `foreign_object.method_name` sends `readMember(foreign_object, method_name)` if member is readable
25+
- `foreign_object.method_name` sends `readMember(foreign_object, method_name)` and raises if member is not invocable or readable
2726
- `foreign_object.method_name(*arguments)` sends `invokeMember(foreign_object, method_name, *arguments)` if member is readable and invokable
2827
- `foreign_object.method_name(*arguments) &block` sends `invokeMember(foreign_object, method_name, *arguments, block)`
2928
- `foreign_object.new(*arguments)` sends `instantiate(foreign_object, *arguments)`

spec/truffle/interop/special_forms_spec.rb

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -145,34 +145,26 @@
145145
l.log.should include(['getMembers', false])
146146
end
147147

148-
it description['.method_name', :readMember, ['method_name'], 'if member is not invocable'] do
149-
pfo, obj, l = proxy[Object.new]
150-
-> { pfo.foo }.should raise_error(NameError)
151-
l.log.should include(["isMemberInvocable", "foo"])
152-
l.log.should include(["readMember", "foo"])
153-
end
154-
155148
it description['.method_name', :invokeMember, ['method_name'], 'if member is invocable'] do
156149
pfo, obj, l = proxy[Class.new { def foo; 3; end }.new]
157150
pfo.foo
158151
l.log.should include(["isMemberInvocable", "foo"])
159152
l.log.should include(["invokeMember", "foo"])
160153
end
161154

162-
it description['.method_name', :readMember, ['method_name'], 'if member is readable and not invokable'] do
155+
it description['.method_name', :readMember, ['method_name'], 'if member is readable'] do
163156
pfo, obj, l = proxy[TruffleInteropSpecs::PolyglotMember.new]
164157
pfo.foo = :bar
165158
pfo.foo
166159
l.log.should include(["isMemberInvocable", "foo"])
167160
l.log.should include(["readMember", "foo"])
168161
end
169162

170-
it description['.method_name', :readMember, ['method_name']] do
171-
pfo, obj, l = proxy[TruffleInteropSpecs::PolyglotMember.new]
172-
pfo.foo = Proc.new { :bar }
173-
pfo.foo.should == :bar
163+
it description['.method_name', :readMember, ['method_name'], 'and raises if member is not invocable or readable'] do
164+
pfo, obj, l = proxy[Object.new]
165+
-> { pfo.foo }.should raise_error(NameError)
174166
l.log.should include(["isMemberInvocable", "foo"])
175-
l.log.should include(["invokeMember", "foo"])
167+
l.log.should include(["readMember", "foo"])
176168
end
177169

178170
it description['.method_name(*arguments)', :invokeMember, ['method_name', '*arguments'], 'if member is readable and invokable'] do
@@ -206,7 +198,8 @@
206198
it description['.class', :getMetaObject] do
207199
pfo, obj, l = proxy[Truffle::Debug.foreign_object]
208200
pfo.class.should == Truffle::Interop::Foreign
209-
Truffle::Interop.to_display_string(Truffle::Debug.foreign_object).should include("hasMetaObject()")
201+
Truffle::Interop.to_display_string(Truffle::Debug.foreign_object)
202+
l.log.should include(["hasMetaObject"])
210203
end
211204

212205
it doc['.inspect', 'returns a Ruby-style `#inspect` string showing members, array elements, etc'] do

0 commit comments

Comments
 (0)