Skip to content

Commit 2c044f3

Browse files
nobukou
authored andcommitted
Mark with ractor and extract assert_ractor_shareable
1 parent 5ad7a2b commit 2c044f3

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
@@ -193,5 +193,10 @@ def under_gc_stress
193193
ensure
194194
GC.stress = stress
195195
end
196+
197+
def assert_ractor_shareable(object)
198+
Ractor.make_shareable(object)
199+
assert_operator Ractor, :shareable?, object
200+
end
196201
end
197202
end

test/fiddle/test_closure.rb

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -158,12 +158,9 @@ def call
158158
end
159159
end
160160

161-
if defined?(Ractor)
162-
def test_ractor_shareable
163-
Closure.create(:int, [:void]) do |c|
164-
Ractor.make_shareable(c)
165-
assert_operator Ractor, :shareable?, c
166-
end
161+
ractor def test_ractor_shareable
162+
Closure.create(:int, [:void]) do |c|
163+
assert_ractor_shareable(c)
167164
end
168165
end
169166
end

test/fiddle/test_function.rb

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -259,12 +259,8 @@ def test_no_memory_leak
259259
end
260260
end
261261

262-
if defined?(Ractor)
263-
def test_ractor_shareable
264-
func = Function.new(@libm['sin'], [TYPE_DOUBLE], TYPE_DOUBLE)
265-
Ractor.make_shareable(func)
266-
assert_operator Ractor, :shareable?, func
267-
end
262+
ractor def test_ractor_shareable
263+
assert_ractor_shareable(Function.new(@libm['sin'], [TYPE_DOUBLE], TYPE_DOUBLE))
268264
end
269265

270266
private

test/fiddle/test_handle.rb

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -227,12 +227,8 @@ def test_fallback_to_ansi
227227
end
228228
end
229229

230-
if defined?(Ractor)
231-
def test_ractor_shareable
232-
handle = Fiddle::Handle.new(LIBC_SO)
233-
Ractor.make_shareable(handle)
234-
assert_operator Ractor, :shareable?, handle
235-
end
230+
ractor def test_ractor_shareable
231+
assert_ractor_shareable(Fiddle::Handle.new(LIBC_SO))
236232
end
237233
end
238234
end if defined?(Fiddle)

test/fiddle/test_memory_view.rb

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -160,13 +160,10 @@ def test_to_s
160160
end
161161
end
162162

163-
if defined?(Ractor)
164-
def test_ractor_shareable
165-
ptr = Pointer["hello world"]
166-
mview = MemoryView.new(ptr)
167-
Ractor.make_shareable(mview)
168-
assert_operator Ractor, :shareable?, mview
169-
end
163+
ractor def test_ractor_shareable
164+
ptr = Pointer["hello world"]
165+
assert_ractor_shareable MemoryView.new(ptr)
166+
assert_predicate ptr, :frozen?
170167
end
171168
end
172169
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
@@ -306,12 +306,11 @@ def test_null_pointer
306306
assert_raise(DLError) {nullpo[0] = 1}
307307
end
308308

309-
if defined?(Ractor)
310-
def test_ractor_shareable
311-
null = Fiddle::NULL
312-
Ractor.make_shareable(null)
313-
assert_operator Ractor, :shareable?, null
314-
end
309+
ractor def test_ractor_shareable
310+
assert_ractor_shareable(Fiddle::NULL)
311+
ary = [0,1,2,4,5]
312+
addr = Pointer.new(dlwrap(ary))
313+
assert_ractor_shareable(addr)
315314
end
316315
end
317316
end if defined?(Fiddle)

0 commit comments

Comments
 (0)