int main(int argc, char* argv[]) { { int array[] = {5, 7, 6, 9, 11, 10, 8}; assert(isPostOrder(array, 7)); } { int array[] = {7, 4, 6, 5}; assert(!isPostOrder(array, 4)); } { int array[] = {1}; assert(isPostOrder(array, 1)); } { int array[] = {1}; assert(!isPostOrder(array, 0)); } { assert(!isPostOrder(NULL, 1)); assert(!isPostOrder(NULL, -1)); } printf("all test case passed!\n"); return 0; }
// --------------------------------------------------------- // TDdParser::SetMetaAttrL() // --------------------------------------------------------- // void TDdParser::SetMetaAttrL( TDdAttr aAttr, const TDesC& aValue, CMediaObjectData *& aMediaObject ) { TInt ok( ETrue ); switch( aAttr ) { case EDdName: { if ( !aMediaObject->Name().Length() ) { ok = aMediaObject->SetNameL( aValue ); } break; } case EDdDescription: { if ( !aMediaObject->Description().Length() ) { ok = aMediaObject->SetDescriptionL( aValue ); } break; } case EDdInstallNotify: { if ( !aMediaObject->InstallNotify().Length() ) { ok = aMediaObject->SetInstallNotifyL( aValue ); } break; } case EDdInfoUrl: { if ( !aMediaObject->InfoUrl().Length() ) { ok = aMediaObject->SetInfoUrlL( aValue ); } break; } case EDdIcon: { if ( !aMediaObject->Icon().Length() ) { ok = aMediaObject->SetIconL( aValue ); } break; } case EDdOrder: { TBool isPostOrder( EFalse ); if ( !aValue.CompareF( KDdPost ) ) { isPostOrder = ETrue; } else if ( aValue.CompareF( KDdAny ) ) { // Expected 'post' or 'any' Error( KErrCodInvalidDescriptor ); break; } aMediaObject->SetOrderIsPost( isPostOrder ); break; } case EDdText: { //TODO for OMA2 /* if ( !iData->Text().Length() ) { ok = iData->SetTextL( aValue ); } */ break; } default: { // Unexpected value. CodPanic( ECodInternal ); } } if ( !ok ) { Error( KErrCodInvalidDescriptor ); } }