0N/A########################################################################
0N/A# This file contains example scripts and property files for collecting
0N/A# code coverage data of the RMI regression suite.
0N/A#
0N/A# Since many RMI regression tests spawn child VMs (either directly
0N/A# or through activation), special support is required for setting
0N/A# command line options and arguments needed by jcov - the code coverage
0N/A# instrumentation and collection tool. This special support is provided
0N/A# by properties in the test.props file. If a file named ../../test.props
0N/A# exists (assuming the working directory is "<path>/JTwork/scratch", this
0N/A# will find "<path>/test.props"), then it will be used by test library
0N/A# code that spawns VMs or instances of rmid. See the example test.props
0N/A# file below for the properties that may be defined.
0N/A
0N/A
0N/A########################################################################
0N/A# The following is a script used to execute RMI regression tests
0N/A# on Solaris and collect code coverage data.
0N/A
0N/A#!/bin/ksh
0N/Aexport JAVA_HOME=<path to special JDK jcov instrumented build>
0N/Aexport JT_HOME=<path to special JTREG build with jcov hooks>
0N/Aexport CLASSPATH=.:${JT_HOME}/javatest.jar
0N/Aexport OPTS="-Xms256m -Xmx256m -XX:+UseUnsupportedDeprecatedJVMPI -XX:+EnableJVMPIInstructionStartEvent -XX:-UseFastEmptyMethods -XX:-UseFastAccessorMethods -timeoutFactor:4"
0N/Aexport TESTBASE=/files/<JDK workspace>/test
0N/A${JT_HOME}/solaris/bin/jtreg -Xrunjcov:file=/files/rmi.jcov ${OPTS} -va -w:/tmp/JT -r:/tmp/JTreport -jdk:${JAVA_HOME} ${TESTBASE}
0N/A
0N/A
0N/A########################################################################
0N/A# The following section is an example test.props property file
0N/A# used for collecting code coverage data for JDK 1.6. These properties
0N/A# are currently supported:
0N/A# jcov.options are the jcov options that should be added to VMs
0N/A# system properties
0N/A# rmid.jcov.args are the jcov options that should be added as
0N/A# arguments to rmid command line; effectively, these
0N/A# are identical to jcov.options but each option is
0N/A# prefaced with '-C'
0N/A# jcov.sleep.multiplier is an integer that will be multiplied by
0N/A# various wait times in the test library; the
0N/A# default value used is '1'
0N/A
0N/Ajcov.options=-Xrunjcov:file=/files/rmi.jcov -Xms256m -Xmx256m -XX:+UseUnsupportedDeprecatedJVMPI -XX:+EnableJVMPIInstructionStartEvent -XX:-UseFastEmptyMethods -XX:-UseFastAccessorMethods
0N/A
0N/Armid.jcov.args=-C-Xrunjcov:file=/files/rmi.jcov -C-Xms256m -C-Xmx256m -C-XX:+UseUnsupportedDeprecatedJVMPI -C-XX:+EnableJVMPIInstructionStartEvent -C-XX:-UseFastEmptyMethods -C-XX:-UseFastAccessorMethods
0N/A
0N/Ajcov.sleep.multiplier=3
0N/A
0N/A
0N/A########################################################################
0N/A# The following section is an example script that generates the
0N/A# jcov report. The important documentation here is the list of Java
0N/A# packages and classes that are included in the RMI coverage report.
0N/A
0N/A#!/bin/ksh
0N/A
0N/Aexport CLASSPATH=<path to jcov.jar>
0N/Aexport SRCS=<path to sources of the instrumented JDK build>
0N/Ajava com.sun.tdk.jcov.MergerMain <path to jcov 'A' template for the build>template_a.jcov /files/rmi.jcov
0N/Ajava -Xms256m -Xmx512m com.sun.tdk.jcov.RepGenMain -fmt=html_ns -src_root=${SRCS} \
0N/A -include=java.rmi.* \
0N/A -include=java.rmi.activation.* \
0N/A -include=java.rmi.dgc.* \
0N/A -include=java.rmi.registry.* \
0N/A -include=java.rmi.server.* \
0N/A -include=sun.rmi.log.* \
0N/A -include=sun.rmi.registry.* \
0N/A -include=sun.rmi.runtime.* \
0N/A -include=sun.rmi.server.* \
0N/A -include=sun.rmi.transport.* \
0N/A -include=sun.rmi.transport.proxy.* \
0N/A -include=sun.rmi.transport.tcp.* \
0N/A -include=java.lang.reflect.Proxy \
0N/A -include=sun.misc.ProxyGenerator \
0N/A -exclude=com.sun.rmi.rmid.* \
0N/A -exclude=sun.rmi.rmic.* \
0N/A -exclude=sun.rmi.rmic.iiop.* \
0N/A -exclude=javax.rmi.ssl.* \
0N/A java.jcov
0N/A