#ifndef TOKENIZERTEST_H
#define TOKENIZERTEST_H

namespace misclib_testcode 
{

/*!
\brief Test the tokenizer and related stuff. 
*/
class tokenizertest
{
  static void example01(string& s);
  static void example02(string& s);
  static void example03(string& s);
public:

  /** Brief description of each test. */
  static string doc[];

  /** Given a paragraph as a string parse into lines. */
  void test00();
  /** Use STL to erase a token in a string. */
  void test01();
  /** Use STL to insert white space around a token in a string. */
  void test02();
  /** Demonstrate the atomize function. */
  void test03();
  /** Demonstrate the stripcomment function. */
  void test04();
  void test05();
  void test06();
  /** Testing the trim function. */
  void test07();
  /** Testing the tokenizer on a real VRML file. */
  void test08();
  /** Test comparewithoutspace(s1,s2). */
  void test09();

  /** atomize_next(<mytag>) to find tagged data.  */
  static void test10();
  /** Exploring reading and writing tagged field with
 * tokenizer::atomize_next_tag() */
  static int unittest01();
  /** tokenizerlocal: reading and writing a tagged string. */
  static int unittest02();
  /** Reading/writing multiple <obj><Item>...</obj>'s */
  static int unittest03();

  
  static int unittest04();

};


/*! Test class. */
class InventoryObj
{
public:
  string item;
  int quantity;
  string desc;
  string sn;
  double cost;

  stringc xml();
};

}

#endif



