#ifndef __UNIT_TESTCELLULARAUTOMATONTEST_H_
#define __UNIT_TESTCELLULARAUTOMATONTEST_H_

#include "UnitTest.h"
#include "../Definitions.h"

namespace unit_test {

  class CellularAutomatonTest : public UnitTest {
    private:
      AlleleType *chromosome;

      unsigned int setChromosomeRule30();
      bool verifyChromosomeRule30( const char *bits ) const;

      unsigned int setChromosomeRule86();
      bool verifyChromosomeRule86( const char *bits ) const;

      unsigned int setChromosomeRule170();
      bool verifyChromosomeRule170( const char *bits ) const;

    public:
      CellularAutomatonTest();
      ~CellularAutomatonTest();
      int run( int argc, char *argv[] );
  };

}

#endif /* __UNIT_TESTCELLULARAUTOMATONTEST_H_ */
