Skip to content

Commit 7341276

Browse files
committed
Mark with ractor and extract assert_ractor_shareable
1 parent 76211be commit 7341276

7 files changed

Lines changed: 25 additions & 38 deletions

File tree

test/fiddle/helper.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,5 +180,10 @@ def under_gc_stress
180180
ensure
181181
GC.stress = stress
182182
end
183+
184+
def assert_ractor_shareable(object)
185+
Ractor.make_shareable(object)
186+
assert_operator Ractor, :shareable?, object
187+
end
183188
end
184189
end

test/fiddle/test_closure.rb

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -150,12 +150,9 @@ def test_memsize_ruby_dev_42480
150150
end
151151
end
152152

153-
if defined?(Ractor)
154-
def test_ractor_shareable
155-
Closure.create(:int, [:void]) do |c|
156-
Ractor.make_shareable(c)
157-
assert_operator Ractor, :shareable?, c
158-
end
153+
ractor def test_ractor_shareable
154+
Closure.create(:int, [:void]) do |c|
155+
assert_ractor_shareable(c)
159156
end
160157
end
161158
end

test/fiddle/test_function.rb

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -225,12 +225,8 @@ def test_no_memory_leak
225225
end
226226
end
227227

228-
if defined?(Ractor)
229-
def test_ractor_shareable
230-
func = Function.new(@libm['sin'], [TYPE_DOUBLE], TYPE_DOUBLE)
231-
Ractor.make_shareable(func)
232-
assert_operator Ractor, :shareable?, func
233-
end
228+
ractor def test_ractor_shareable
229+
assert_ractor_shareable(Function.new(@libm['sin'], [TYPE_DOUBLE], TYPE_DOUBLE))
234230
end
235231

236232
private

test/fiddle/test_handle.rb

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -215,12 +215,8 @@ def test_fallback_to_ansi
215215
end
216216
end
217217

218-
if defined?(Ractor)
219-
def test_ractor_shareable
220-
handle = Fiddle::Handle.new(LIBC_SO)
221-
Ractor.make_shareable(handle)
222-
assert_operator Ractor, :shareable?, handle
223-
end
218+
ractor def test_ractor_shareable
219+
assert_ractor_shareable(Fiddle::Handle.new(LIBC_SO))
224220
end
225221
end
226222
end if defined?(Fiddle)

test/fiddle/test_memory_view.rb

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -140,13 +140,10 @@ def test_to_s
140140
[string, string.frozen?])
141141
end
142142

143-
if defined?(Ractor)
144-
def test_ractor_shareable
145-
ptr = Pointer["hello world"]
146-
mview = MemoryView.new(ptr)
147-
Ractor.make_shareable(mview)
148-
assert_operator Ractor, :shareable?, mview
149-
end
143+
ractor def test_ractor_shareable
144+
ptr = Pointer["hello world"]
145+
assert_ractor_shareable MemoryView.new(ptr)
146+
assert_predicate ptr, :frozen?
150147
end
151148
end
152149
end

test/fiddle/test_pinned.rb

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,10 @@ def test_clear
2424
assert_match "called on", ex.message
2525
end
2626

27-
if defined?(Ractor)
28-
def test_ractor_shareable
29-
x = Object.new
30-
pinner = Pinned.new x
31-
Ractor.make_shareable(pinner)
32-
assert_operator Ractor, :shareable?, pinner
33-
end
27+
ractor def test_ractor_shareable
28+
obj = Object.new
29+
assert_ractor_shareable(Pinned.new(obj))
30+
assert_predicate obj, :frozen?
3431
end
3532
end
3633
end

test/fiddle/test_pointer.rb

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -303,12 +303,11 @@ def test_no_memory_leak
303303
end
304304
end
305305

306-
if defined?(Ractor)
307-
def test_ractor_shareable
308-
null = Fiddle::NULL
309-
Ractor.make_shareable(null)
310-
assert_operator Ractor, :shareable?, null
311-
end
306+
ractor def test_ractor_shareable
307+
assert_ractor_shareable(Fiddle::NULL)
308+
ary = [0,1,2,4,5]
309+
addr = Pointer.new(dlwrap(ary))
310+
assert_ractor_shareable(addr)
312311
end
313312
end
314313
end if defined?(Fiddle)

0 commit comments

Comments
 (0)