<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML
><HEAD
><TITLE
>Adding A Test Case To A Testsuite.</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
"><LINK
REL="HOME"
TITLE="DejaGnu"
HREF="book1.html"><LINK
REL="UP"
TITLE="Extending DejaGnu"
HREF="c1099.html"><LINK
REL="PREVIOUS"
TITLE="Debugging A Test Case"
HREF="x1462.html"><LINK
REL="NEXT"
TITLE="Hints On Writing A Test Case"
HREF="x1522.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>DejaGnu: The GNU Testing Framework</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="x1462.html"
ACCESSKEY="P"
>&#60;&#60;&#60; Previous</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Extending DejaGnu</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="x1522.html"
ACCESSKEY="N"
>Next &#62;&#62;&#62;</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="ADDING"
></A
>Adding A Test Case To A Testsuite.</H1
><P
>There are two slightly different ways to add a test
      case. One is to add the test case to an existing directory. The
      other is to create a new directory to hold your test. The
      existing test directories represent several styles of testing,
      all of which are slightly different; examine the directories for
      the tool of interest to see which (if any) is most suitable.</P
><P
>Adding a GCC test can be very simple: just add the C code
      to any directory beginning with <TT
CLASS="FILENAME"
>gcc</TT
>. and it
      runs on the next <TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>runtest --tool
      gcc</PRE
></TD
></TR
></TABLE
>.</P
><P
>To add a test to GDB, first add any source code you will
      need to the test directory. Then you can either create a new
      expect file, or add your test to an existing one (any
      file with a <I
CLASS="EMPHASIS"
>.exp</I
> suffix).  Creating a new
      .exp file is probably a better idea if the test is significantly
      different from existing tests. Adding it as a separate file also
      makes upgrading easier. If the C code has to be already compiled
      before the test will run, then you'll have to add it to the
      <TT
CLASS="FILENAME"
>Makefile.in</TT
> file for that test directory,
      then run <B
CLASS="COMMAND"
>configure</B
> and
      <B
CLASS="COMMAND"
>make</B
>.</P
><P
>Adding a test by creating a new directory is very
      similar:</P
><P
></P
><UL
><LI
STYLE="list-style-type: disc"
><P
>Create the new directory. All subdirectory names
      begin with the name of the tool to test; e.g. G++ tests might be
      in a directory called <TT
CLASS="FILENAME"
>g++.other</TT
>. There can
      be multiple test directories that start with the same tool name
      (such as <I
CLASS="EMPHASIS"
>g++</I
>).</P
></LI
><LI
STYLE="list-style-type: disc"
><P
>Add the new directory name to the
      <SPAN
CLASS="SYMBOL"
>configdirs</SPAN
> definition in the
      <TT
CLASS="FILENAME"
>configure.in</TT
> file for the testsuite
      directory. This way when <B
CLASS="COMMAND"
>make</B
> and
      <B
CLASS="COMMAND"
>configure</B
> next run, they include the new
      directory.</P
></LI
><LI
STYLE="list-style-type: disc"
><P
>Add the new test case to the directory, as
      above. </P
></LI
><LI
STYLE="list-style-type: disc"
><P
>To add support in the new directory for
      configure and make, you must also create a
      <TT
CLASS="FILENAME"
>Makefile.in</TT
> and a
      <TT
CLASS="FILENAME"
>configure.in</TT
>.</P
></LI
></UL
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="x1462.html"
ACCESSKEY="P"
>&#60;&#60;&#60; Previous</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="book1.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="x1522.html"
ACCESSKEY="N"
>Next &#62;&#62;&#62;</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Debugging A Test Case</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="c1099.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Hints On Writing A Test Case</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>