Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / tests / Abstract_Interface / README
blob9107405aa65a761e65d2d9c8ffe5c55ace660354
1 Description:
3 This code contains some simple tests of abstract interfaces.
5 Note:
7 The test for passing state with a valuetype is based on the code
8 in TAO/tests/OBV/Forward. A simple valuetype tree is constructed
9 by defining valuetypes that can contain other valuetypes as a root
10 or as left and right branches. All nodes also contain a string name.
11 The tree is constructed on the server side and the root is passed back to the
12 client in an OUT argument as an abstract interface. The valuetype
13 is extracted, and the contents of the tree are displayed.
15 The other two tests are for operations of an interface passed as an
16 abstract interface. A derived interface is passed to the client in
17 an OUT argument as an abstract interface which is the parent of the
18 derived interface's base class. The base class operation is called
19 directly on the abstract interface by the client. Then the interface
20 itself is extracted and cast to the derived type. Finally, both the
21 base class and the derived class operations are called by the client.
23 In the final test, an operation called on the abstract interface
24 is made to throw a user exception deliberately to test exception
25 handling.
27 Usage:
29 The server will put the passer object's IOR into a file with a default
30 name known to the client. However, the filename may be changed with:
32 $ server -o <filename>
34 in which case the client should be run as follows:
36 $ client -k file://<filename>
38 Other client command line options:
40 -d Enable test output for debugging
41 -s Test the passing of state only
42 -o Test operations only
43 -e Test exception handling only
45 The last three options are  mutually exclusive and will override
46 any previous test selection options. The default behavior is to run
47 all three tests.