xref: /onnv-gate/usr/src/lib/fm/libdiagcode/common/tests/README (revision 0:68f95e015346)
1*0Sstevel@tonic-gate#
2*0Sstevel@tonic-gate# CDDL HEADER START
3*0Sstevel@tonic-gate#
4*0Sstevel@tonic-gate# The contents of this file are subject to the terms of the
5*0Sstevel@tonic-gate# Common Development and Distribution License, Version 1.0 only
6*0Sstevel@tonic-gate# (the "License").  You may not use this file except in compliance
7*0Sstevel@tonic-gate# with the License.
8*0Sstevel@tonic-gate#
9*0Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*0Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
11*0Sstevel@tonic-gate# See the License for the specific language governing permissions
12*0Sstevel@tonic-gate# and limitations under the License.
13*0Sstevel@tonic-gate#
14*0Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
15*0Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*0Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
17*0Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
18*0Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
19*0Sstevel@tonic-gate#
20*0Sstevel@tonic-gate# CDDL HEADER END
21*0Sstevel@tonic-gate#
22*0Sstevel@tonic-gate#
23*0Sstevel@tonic-gate# Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
24*0Sstevel@tonic-gate# Use is subject to license terms.
25*0Sstevel@tonic-gate#
26*0Sstevel@tonic-gate#
27*0Sstevel@tonic-gate#pragma ident	"%Z%%M%	%I%	%E% SMI"
28*0Sstevel@tonic-gate#
29*0Sstevel@tonic-gate
30*0Sstevel@tonic-gateThese are sample DIAGCODE dictionary files, used only when the
31*0Sstevel@tonic-gate	make test
32*0Sstevel@tonic-gatetarget is built in the libdiagcode source area.  These files have
33*0Sstevel@tonic-gatespecial comments embedded in them that the test driver (tstdiagcode.c)
34*0Sstevel@tonic-gateuses to tell it what tests to run against each dictionary.  These
35*0Sstevel@tonic-gatetests can be used to regression test libdiagcode after a bug fix.
36*0Sstevel@tonic-gateIf you add a feature to libdiagcode, you should add the appropriate
37*0Sstevel@tonic-gateunit tests here.
38*0Sstevel@tonic-gate
39*0Sstevel@tonic-gateSince DIAGCODE dictionaries allow comments with the '#' character,
40*0Sstevel@tonic-gatethe test driver looks for directives in the comments.  The directive
41*0Sstevel@tonic-gatecomments start with:
42*0Sstevel@tonic-gate
43*0Sstevel@tonic-gate	#TEST:
44*0Sstevel@tonic-gate
45*0Sstevel@tonic-gateand then have a colon-separated list of arguments.  The first argument
46*0Sstevel@tonic-gateis the function the test driver should call: open, close, codelen, maxkey,
47*0Sstevel@tonic-gatekey2code, code2key, or getprop.  The second argument is the errno expected
48*0Sstevel@tonic-gateon return, or zero if no errno is expected.  The next two arguments specify
49*0Sstevel@tonic-gateinput and output parameters to the function, and are in formats specific
50*0Sstevel@tonic-gateto each function.  For example:
51*0Sstevel@tonic-gate
52*0Sstevel@tonic-gate	#TEST:key2code:0:fault.one fault.two:SAMPLE0-8000-5V
53*0Sstevel@tonic-gate
54*0Sstevel@tonic-gateThe above line tells the test driver to call fm_dc_key2code() with the key[]
55*0Sstevel@tonic-gatearray set to "fault.one" and "fault.two" (in that order) and expect
56*0Sstevel@tonic-gatea non-error return, with the code SAMPLE0-8000-5V filled in.
57