Example #1
0
/// Tests the Multibar Rest Functions
/// @return True if all tests were executed, false if not
bool PositionTestSuite::TestCaseMultibarRest()
{
    //------Last Checked------//
    // - Jan 19, 2005
    
    // TEST CASE: SetMultibarRest
    {
        wxByte i = 0;
        for (; i <= Position::MAX_MULTIBAR_REST_MEASURE_COUNT; i++)
        {
            Position position;
            bool set = position.SetMultibarRest(i);
            wxByte measureCount = 0;
            position.GetMultibarRest(measureCount);
            TEST(wxString::Format(wxT("SetMultibarRest - %d"), i),
                ((set == (i >= Position::MIN_MULTIBAR_REST_MEASURE_COUNT) && 
                (i <= Position::MAX_MULTIBAR_REST_MEASURE_COUNT)) &&
                ((i < Position::MIN_MULTIBAR_REST_MEASURE_COUNT) ? 1 : 
                    ((position.HasMultibarRest()) && (measureCount == i))
                ))
            );
            
            if (i == Position::MAX_MULTIBAR_REST_MEASURE_COUNT)
                break;
        }
    }
    
    // TEST CASE: ClearMultibarRest
    {
        Position position;
        bool set = position.SetMultibarRest(10);
        position.ClearMultibarRest();
        TEST(wxT("ClearMultibarRest"), 
            ((set) &&
            !position.HasMultibarRest())
        );
    }
    
    return (true);
}