/[eiffelstudio]/trunk/eweasel/tests/scoop051/client.e
ViewVC logotype

Contents of /trunk/eweasel/tests/scoop051/client.e

Parent Directory Parent Directory | Revision Log Revision Log


Revision 97419 - (show annotations)
Tue Jun 2 12:32:37 2015 UTC (4 years, 4 months ago) by romanschmocker
File size: 1094 byte(s)
Extended test#scoop051 to cover impersonated calls as well.

1 note
2 description: "Test if nested separate callbacks are handled correctly."
3 author: "Roman Schmocker"
4 date: "$Date$"
5 revision: "$Revision$"
6
7 class
8 CLIENT
9
10 create
11 make
12
13 feature
14
15 passed_string: detachable STRING
16
17 make
18 -- Entry point for the test.
19 local
20 retried: BOOLEAN
21 supplier: separate SUPPLIER
22 do
23 create supplier
24 pass_locks (supplier)
25 end
26
27 pass_locks (a_supplier: separate SUPPLIER)
28 -- Pass on our locks to `a_supplier'.
29 do
30 a_supplier.perform_callback (Current)
31 print (passed_string)
32 -- Extra challenge: Does SCOOP behave correctly
33 -- on separate callbacks when impersonation kicks
34 -- in during a second synchronous call?
35 a_supplier.perform_callback (Current)
36 print (passed_string)
37 end
38
39 callback (a_string: separate STRING)
40 -- Import `a_string'.
41 do
42 -- Note: This is the first callback, and we have the
43 -- call stack lock of the supplier.
44
45 -- By executing `make_from_string' we perform a lot of
46 -- nested (second-level) callbacks on SUPPLIER.
47 create passed_string.make_from_separate (a_string)
48 end
49
50 end

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.23