/// Tests the Operators
/// @return True if all tests were executed, false if not
bool DirectionTestSuite::TestCaseOperator()
{
    //------Last Checked------//
    // - Jan 11, 2005
                
    // TEST CASE: Operator=
    {
        Direction direction(12, Direction::toCoda, Direction::activeDaCapo, 4);
        Direction direction2 = direction;        
        TEST(wxT("Operator="), 
            (direction2 == direction)
        );
        
        direction = direction;
        TEST(wxT("Operator= (self-assignment)"), 
            (direction == direction)
        );
    }
    
    // TEST CASE: Operator==
    {
        Direction direction(12, Direction::toCoda, Direction::activeDaCapo, 4);
        Direction direction2(12, Direction::toCoda, Direction::activeDaCapo, 4);
        Direction direction3(13, Direction::toDoubleCoda, Direction::activeDaCapo, 4);
        Direction direction4(12, Direction::toCoda, Direction::activeNone, 4);
        Direction direction5(12, Direction::toCoda, Direction::activeDaCapo, 5);
        Direction direction6(12, Direction::toCoda, Direction::activeDaCapo, 4);
        direction6.AddSymbol(Direction::toDoubleCoda, Direction::activeDaCapo, 4);
                       
        TEST(wxT("Operator== - direction == direction"), (direction == direction2));
        TEST(wxT("Operator== - direction != direction"), !(direction == direction3));
        TEST(wxT("Operator== - direction != direction 2"), !(direction == direction4));
        TEST(wxT("Operator== - direction != direction 3"), !(direction == direction5));
        TEST(wxT("Operator== - direction != direction 4"), !(direction == direction6));
    }
        
    // TEST CASE: Operator!=
    {
        Direction direction(12, Direction::toCoda, Direction::activeDaCapo, 4);
        Direction direction2(12, Direction::toCoda, Direction::activeDaCapo, 4);
        Direction direction3(13, Direction::toDoubleCoda, Direction::activeDaCapo, 4);
        Direction direction4(12, Direction::toCoda, Direction::activeNone, 4);
        Direction direction5(12, Direction::toCoda, Direction::activeDaCapo, 5);
        Direction direction6(12, Direction::toCoda, Direction::activeDaCapo, 4);
        direction6.AddSymbol(Direction::toDoubleCoda, Direction::activeDaCapo, 4);
                       
        TEST(wxT("Operator!= - direction == direction"), !(direction != direction2));
        TEST(wxT("Operator!= - direction != direction"), (direction != direction3));
        TEST(wxT("Operator!= - direction != direction 2"), (direction != direction4));
        TEST(wxT("Operator!= - direction != direction 3"), (direction != direction5));
        TEST(wxT("Operator!= - direction != direction 4"), (direction != direction6));
    }

    return (true);
}
示例#2
0
int direction_between_vectors(double* dir, double* xyz1, double* xyz2)
{
  double * sub;
  sub = (double *) malloc(3*sizeof(double));
  subtract3(sub,xyz1,xyz2);
  direction3(dir,sub);
  free(sub);
}
示例#3
0
int direction_phi_theta(double *phi_theta, double* xyz)
{
  double *dir;
  dir = (double *)malloc(3*sizeof(double));
  direction3(dir,xyz);
  convert_to_phi_theta(phi_theta,dir);
  free(dir);
}