37 #include <alwaysonlinemanagerclient.h> |
36 #include <alwaysonlinemanagerclient.h> |
38 #include <bautils.h> |
37 #include <bautils.h> |
39 #include <digia/eunit/eunitmacros.h> |
38 #include <digia/eunit/eunitmacros.h> |
40 #include <aknglobalnote.h> |
39 #include <aknglobalnote.h> |
41 #include <apgtask.h> |
40 #include <apgtask.h> |
42 #include <eikmenup.h> |
|
43 #include <uikoninternalpskeys.h> |
|
44 |
41 |
45 |
42 |
46 // Next row is to disable warning emerging from EUnit code. |
43 // Next row is to disable warning emerging from EUnit code. |
47 // Placement is due to a fact that most test case files |
44 // Placement is due to a fact that most test case files |
48 // include this file. Directive can be removed when |
45 // include this file. Directive can be removed when |
49 // EUnit is fixed. |
46 // EUnit is fixed. |
50 #pragma warn_illtokenpasting off |
47 #pragma warn_illtokenpasting off |
51 |
48 |
52 _LIT( KMusAiwProviderResource, "c:\\sys\\bin\\musaiwproviderui.rsc" ); |
49 _LIT( KMusAiwProviderResource, "c:\\sys\\bin\\musaiwproviderui.rsc" ); |
53 _LIT( KResourceFilenameRom,"z:\\sys\\bin\\musaiwproviderui.rsc" ); |
50 _LIT( KResourceFilenameRom,"z:\\sys\\bin\\musaiwproviderui.rsc" ); |
54 |
|
55 _LIT( KMusOnHold, "On hold" ); |
|
56 |
51 |
57 _LIT8( KMusOnHold8, "On hold" ); |
52 _LIT8( KMusOnHold8, "On hold" ); |
58 _LIT8( KMusNetworkIncompatible8, "Network incompatible" ); |
53 _LIT8( KMusNetworkIncompatible8, "Network incompatible" ); |
59 _LIT8( KMusConferenceCall8, "Conference call" ); |
54 _LIT8( KMusConferenceCall8, "Conference call" ); |
60 _LIT8( KMusRecipientIncapable8, "Recipient incapable" ); |
55 _LIT8( KMusRecipientIncapable8, "Recipient incapable" ); |
279 // |
271 // |
280 // ----------------------------------------------------------------------------- |
272 // ----------------------------------------------------------------------------- |
281 // |
273 // |
282 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneLL() |
274 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneLL() |
283 { |
275 { |
|
276 |
|
277 |
284 RFs fs; |
278 RFs fs; |
285 User::LeaveIfError( fs.Connect() ); |
279 User::LeaveIfError( fs.Connect() ); |
|
280 |
286 CleanupClosePushL( fs ); |
281 CleanupClosePushL( fs ); |
287 |
282 |
288 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
283 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
289 KResourceFilenameRom() ); |
284 KResourceFilenameRom() ); |
290 |
285 |
291 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
286 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
292 |
287 |
293 CEikMenuPane* eikPane = NULL; |
288 CEikMenuPane* eikPane = new( ELeave ) CEikMenuPane( this ); |
294 CAiwMenuPane* aiwPane = CreateAiwMenuPaneLC( &eikPane ); |
289 CleanupStack::PushL( eikPane ); |
|
290 |
|
291 // Constructing eikPane is not compulsory for testing and leads to a memory |
|
292 // leak. |
|
293 //eikPane->ConstructL( NULL, this ); |
|
294 |
|
295 CAiwMenuPane* aiwPane = new( ELeave ) CAiwMenuPane( *eikPane, 0 ); //Takes ownership |
|
296 CleanupStack::Pop( eikPane ); |
|
297 CleanupStack::PushL( aiwPane ); |
295 |
298 |
296 // ResourceFile is empty |
299 // ResourceFile is empty |
297 delete iProvider->iResourceFileName; |
300 delete iProvider->iResourceFileName; |
298 |
301 |
299 iProvider->iResourceFileName = NULL ; |
302 iProvider->iResourceFileName = NULL ; |
367 CleanupStack::PopAndDestroy(); // |
370 CleanupStack::PopAndDestroy(); // |
368 } |
371 } |
369 |
372 |
370 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL2L() |
373 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL2L() |
371 { |
374 { |
|
375 |
372 RFs fs; |
376 RFs fs; |
373 User::LeaveIfError( fs.Connect() ); |
377 User::LeaveIfError( fs.Connect() ); |
|
378 |
374 CleanupClosePushL( fs ); |
379 CleanupClosePushL( fs ); |
375 |
380 |
376 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
381 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
377 KResourceFilenameRom() ); |
382 KResourceFilenameRom() ); |
378 |
383 |
379 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
384 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
380 |
385 |
381 CEikMenuPane* eikPane = NULL; |
386 CEikMenuPane* eikPane = new( ELeave ) CEikMenuPane( this ); |
382 CAiwMenuPane* aiwPane = CreateAiwMenuPaneLC( &eikPane ); |
387 CleanupStack::PushL( eikPane ); |
383 |
388 |
|
389 // Constructing eikPane is not compulsory for testing and leads to a memory |
|
390 // leak. |
|
391 //eikPane->ConstructL( NULL, this ); |
|
392 |
|
393 CAiwMenuPane* aiwPane = new( ELeave ) CAiwMenuPane( *eikPane, 0 ); //Takes ownership |
|
394 CleanupStack::Pop( eikPane ); |
|
395 CleanupStack::PushL( aiwPane ); |
|
396 |
384 // ResourceFile is empty |
397 // ResourceFile is empty |
385 delete iProvider->iResourceFileName; |
398 delete iProvider->iResourceFileName; |
386 |
399 |
387 iProvider->iResourceFileName = NULL ; |
400 iProvider->iResourceFileName = NULL ; |
388 |
401 |
426 } |
439 } |
427 |
440 |
428 |
441 |
429 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL3L() |
442 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL3L() |
430 { |
443 { |
|
444 |
431 RFs fs; |
445 RFs fs; |
432 User::LeaveIfError( fs.Connect() ); |
446 User::LeaveIfError( fs.Connect() ); |
|
447 |
433 CleanupClosePushL( fs ); |
448 CleanupClosePushL( fs ); |
434 |
449 |
435 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
450 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
436 KResourceFilenameRom() ); |
451 KResourceFilenameRom() ); |
437 |
452 |
438 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
453 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
439 |
454 |
440 CEikMenuPane* eikPane = NULL; |
455 CEikMenuPane* eikPane = new( ELeave ) CEikMenuPane( this ); |
441 CAiwMenuPane* aiwPane = CreateAiwMenuPaneLC( &eikPane ); |
456 CleanupStack::PushL( eikPane ); |
|
457 |
|
458 // Constructing eikPane is not compulsory for testing and leads to a memory |
|
459 // leak. |
|
460 //eikPane->ConstructL( NULL, this ); |
|
461 |
|
462 CAiwMenuPane* aiwPane = new( ELeave ) CAiwMenuPane( *eikPane, 0 ); //Takes ownership |
|
463 CleanupStack::Pop( eikPane ); |
|
464 CleanupStack::PushL( aiwPane ); |
442 |
465 |
443 // ResourceFile is empty |
466 // ResourceFile is empty |
444 delete iProvider->iResourceFileName; |
467 delete iProvider->iResourceFileName; |
445 |
468 |
446 iProvider->iResourceFileName = NULL ; |
469 iProvider->iResourceFileName = NULL ; |
483 } |
506 } |
484 |
507 |
485 |
508 |
486 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL4L() |
509 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL4L() |
487 { |
510 { |
|
511 |
488 RFs fs; |
512 RFs fs; |
489 User::LeaveIfError( fs.Connect() ); |
513 User::LeaveIfError( fs.Connect() ); |
|
514 |
490 CleanupClosePushL( fs ); |
515 CleanupClosePushL( fs ); |
491 |
516 |
492 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
517 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
493 KResourceFilenameRom() ); |
518 KResourceFilenameRom() ); |
494 |
519 |
495 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
520 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
496 |
521 |
497 CEikMenuPane* eikPane = NULL; |
522 CEikMenuPane* eikPane = new( ELeave ) CEikMenuPane( this ); |
498 CAiwMenuPane* aiwPane = CreateAiwMenuPaneLC( &eikPane ); |
523 CleanupStack::PushL( eikPane ); |
|
524 |
|
525 // Constructing eikPane is not compulsory for testing and leads to a memory |
|
526 // leak. |
|
527 //eikPane->ConstructL( NULL, this ); |
|
528 |
|
529 CAiwMenuPane* aiwPane = new( ELeave ) CAiwMenuPane( *eikPane, 0 ); //Takes ownership |
|
530 CleanupStack::Pop( eikPane ); |
|
531 CleanupStack::PushL( aiwPane ); |
499 |
532 |
500 // ResourceFile is empty |
533 // ResourceFile is empty |
501 delete iProvider->iResourceFileName; |
534 delete iProvider->iResourceFileName; |
502 |
535 |
503 iProvider->iResourceFileName = NULL ; |
536 iProvider->iResourceFileName = NULL ; |
540 |
573 |
541 } |
574 } |
542 |
575 |
543 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL5L() |
576 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL5L() |
544 { |
577 { |
|
578 |
545 RFs fs; |
579 RFs fs; |
546 User::LeaveIfError( fs.Connect() ); |
580 User::LeaveIfError( fs.Connect() ); |
|
581 |
547 CleanupClosePushL( fs ); |
582 CleanupClosePushL( fs ); |
548 |
583 |
549 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
584 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
550 KResourceFilenameRom() ); |
585 KResourceFilenameRom() ); |
551 |
586 |
552 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
587 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
553 |
588 |
554 CEikMenuPane* eikPane = NULL; |
589 CEikMenuPane* eikPane = new( ELeave ) CEikMenuPane( this ); |
555 CAiwMenuPane* aiwPane = CreateAiwMenuPaneLC( &eikPane ); |
590 CleanupStack::PushL( eikPane ); |
|
591 |
|
592 // Constructing eikPane is not compulsory for testing and leads to a memory |
|
593 // leak. |
|
594 //eikPane->ConstructL( NULL, this ); |
|
595 |
|
596 CAiwMenuPane* aiwPane = new( ELeave ) CAiwMenuPane( *eikPane, 0 ); //Takes ownership |
|
597 CleanupStack::Pop( eikPane ); |
|
598 CleanupStack::PushL( aiwPane ); |
556 |
599 |
557 // ResourceFile is empty |
600 // ResourceFile is empty |
558 delete iProvider->iResourceFileName; |
601 delete iProvider->iResourceFileName; |
559 |
602 |
560 iProvider->iResourceFileName = NULL ; |
603 iProvider->iResourceFileName = NULL ; |
599 |
642 |
600 } |
643 } |
601 |
644 |
602 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL6L() |
645 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL6L() |
603 { |
646 { |
|
647 |
604 RFs fs; |
648 RFs fs; |
605 User::LeaveIfError( fs.Connect() ); |
649 User::LeaveIfError( fs.Connect() ); |
|
650 |
606 CleanupClosePushL( fs ); |
651 CleanupClosePushL( fs ); |
607 |
652 |
608 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
653 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
609 KResourceFilenameRom() ); |
654 KResourceFilenameRom() ); |
610 |
655 |
611 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
656 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
612 |
657 |
613 CEikMenuPane* eikPane = NULL; |
658 CEikMenuPane* eikPane = new( ELeave ) CEikMenuPane( this ); |
614 CAiwMenuPane* aiwPane = CreateAiwMenuPaneLC( &eikPane ); |
659 CleanupStack::PushL( eikPane ); |
|
660 |
|
661 // Constructing eikPane is not compulsory for testing and leads to a memory |
|
662 // leak. |
|
663 //eikPane->ConstructL( NULL, this ); |
|
664 |
|
665 CAiwMenuPane* aiwPane = new( ELeave ) CAiwMenuPane( *eikPane, 0 ); //Takes ownership |
|
666 CleanupStack::Pop( eikPane ); |
|
667 CleanupStack::PushL( aiwPane ); |
615 |
668 |
616 // ResourceFile is empty |
669 // ResourceFile is empty |
617 delete iProvider->iResourceFileName; |
670 delete iProvider->iResourceFileName; |
618 |
671 |
619 iProvider->iResourceFileName = NULL ; |
672 iProvider->iResourceFileName = NULL ; |
655 |
708 |
656 CleanupStack::PopAndDestroy(); // fs |
709 CleanupStack::PopAndDestroy(); // fs |
657 |
710 |
658 } |
711 } |
659 |
712 |
660 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneLFastModeL() |
713 |
|
714 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneL7L() |
661 { |
715 { |
|
716 |
662 RFs fs; |
717 RFs fs; |
663 User::LeaveIfError( fs.Connect() ); |
718 User::LeaveIfError( fs.Connect() ); |
|
719 |
664 CleanupClosePushL( fs ); |
720 CleanupClosePushL( fs ); |
665 |
721 |
666 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
722 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
667 KResourceFilenameRom() ); |
723 KResourceFilenameRom() ); |
668 |
724 |
669 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
725 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
670 |
726 |
671 CEikMenuPane* eikPane = NULL; |
727 CEikMenuPane* eikPane = new( ELeave ) CEikMenuPane( this ); |
672 CAiwMenuPane* aiwPane = CreateAiwMenuPaneLC( &eikPane ); |
728 CleanupStack::PushL( eikPane ); |
|
729 |
|
730 // Constructing eikPane is not compulsory for testing and leads to a memory |
|
731 // leak. |
|
732 //eikPane->ConstructL( NULL, this ); |
|
733 |
|
734 CAiwMenuPane* aiwPane = new( ELeave ) CAiwMenuPane( *eikPane, 0 ); //Takes ownership |
|
735 CleanupStack::Pop( eikPane ); |
|
736 CleanupStack::PushL( aiwPane ); |
673 |
737 |
674 // ResourceFile is empty |
738 // ResourceFile is empty |
675 delete iProvider->iResourceFileName; |
739 delete iProvider->iResourceFileName; |
676 |
740 |
677 iProvider->iResourceFileName = NULL ; |
741 iProvider->iResourceFileName = NULL ; |
678 iProvider->InitializeMenuPaneL( *aiwPane, 0, 0, *list ); |
742 iProvider->InitializeMenuPaneL( *aiwPane, 0, 0, *list ); |
679 EUNIT_ASSERT( iProvider->iResourceFileName != NULL ) |
743 EUNIT_ASSERT( iProvider->iResourceFileName != NULL ) |
680 // Menu item counter |
744 // Menu item counter |
681 TInt menuPaneCount = eikPane->NumberOfItemsInPane(); |
745 TInt menuPaneCount = eikPane->NumberOfItemsInPane(); |
|
746 |
|
747 // test "forbidden" feature: mus NOT allowed, operator variant set to operator |
|
748 MultimediaSharingSettings::SetOperatorVariantSettingL( |
|
749 MusSettingsKeys::EOperatorSpecific ); |
|
750 RProperty::Set( NMusSessionInformationApi::KCategoryUid, |
|
751 NMusSessionInformationApi::KMUSForbidden, |
|
752 NMusSessionInformationApi::EMUSForbidden ); |
|
753 EUNIT_ASSERT( eikPane->NumberOfItemsInPane() == menuPaneCount ) |
682 |
754 |
683 // set operator back to standard and allow mus |
755 // set operator back to standard and allow mus |
684 RProperty::Set( NMusSessionInformationApi::KCategoryUid , |
756 RProperty::Set( NMusSessionInformationApi::KCategoryUid , |
685 NMusSessionInformationApi::KMUSForbidden , |
757 NMusSessionInformationApi::KMUSForbidden , |
686 NMusSessionInformationApi::EMUSAllowed ); |
758 NMusSessionInformationApi::EMUSAllowed ); |
687 MultimediaSharingSettings::SetOperatorVariantSettingL( |
759 MultimediaSharingSettings::SetOperatorVariantSettingL( |
688 MusSettingsKeys::EStandard ); |
760 MusSettingsKeys::EStandard ); |
689 MultimediaSharingSettings::SetPropertyValueL( |
761 |
690 MusSettingsKeys::KFastStartupMode, MusSettingsKeys::EFastModeOn ); |
762 // Cases for "Mush not supported" |
691 |
763 FeatureManager::MultimediaSharingNotSupported(); |
692 // Options not enabled, mus shown in menu |
764 CMusManager::SetAvailability( MultimediaSharing::EMultimediaSharingAvailable ); |
693 // |
|
694 MultimediaSharingSettings::SetCapabilityQuerySettingL( |
|
695 MusSettingsKeys::ENoOptions ); |
|
696 CMusManager::SetAvailability(MultimediaSharing::EMultimediaSharingAvailable); |
|
697 menuPaneCount = eikPane->NumberOfItemsInPane(); |
765 menuPaneCount = eikPane->NumberOfItemsInPane(); |
698 iProvider->InitializeMenuPaneL( *aiwPane, 0, 0, *list ); |
766 iProvider->InitializeMenuPaneL( *aiwPane, 0, 0, *list ); |
699 |
|
700 MUS_CHECK_MEMORY_LEAVE( eikPane->NumberOfItemsInPane() == menuPaneCount + 3 ) |
|
701 |
|
702 // Options supported, not yet available, mus not shown in menu |
|
703 // |
|
704 MultimediaSharingSettings::SetCapabilityQuerySettingL( |
|
705 MusSettingsKeys::EParallel ); |
|
706 CMusManager::SetAvailability(MultimediaSharing::ESipOptionsSent); |
|
707 menuPaneCount = eikPane->NumberOfItemsInPane(); |
|
708 iProvider->InitializeMenuPaneL( *aiwPane, 0, 0, *list ); |
|
709 |
|
710 MUS_CHECK_MEMORY_LEAVE( eikPane->NumberOfItemsInPane() == menuPaneCount ) |
767 MUS_CHECK_MEMORY_LEAVE( eikPane->NumberOfItemsInPane() == menuPaneCount ) |
711 |
768 FeatureManager::MultimediaSharingSupported(); |
|
769 |
|
770 // set camera support on |
|
771 FeatureManager::CameraSupported(); |
712 CleanupStack::PopAndDestroy( aiwPane ); |
772 CleanupStack::PopAndDestroy( aiwPane ); |
713 CleanupStack::PopAndDestroy( list ); |
773 CleanupStack::PopAndDestroy( list ); |
714 BaflUtils::DeleteFile( fs, KResourceFilenameRom() ); |
774 BaflUtils::DeleteFile( fs, KResourceFilenameRom() ); |
715 |
775 |
716 CleanupStack::PopAndDestroy(); // fs |
776 CleanupStack::PopAndDestroy(); // fs |
717 |
777 |
718 } |
778 } |
719 |
779 |
720 // ----------------------------------------------------------------------------- |
780 |
721 // |
|
722 // ----------------------------------------------------------------------------- |
|
723 // |
|
724 void UT_CMusAiwProvider::UT_CMusAiwProvider_InitializeMenuPaneLFastMode2L() |
|
725 { |
|
726 RFs fs; |
|
727 User::LeaveIfError( fs.Connect() ); |
|
728 CleanupClosePushL( fs ); |
|
729 |
|
730 BaflUtils::CopyFile( fs, KMusAiwProviderResource(), |
|
731 KResourceFilenameRom() ); |
|
732 |
|
733 CAiwGenericParamList* list = CAiwGenericParamList::NewLC(); |
|
734 |
|
735 CEikMenuPane* eikPane = NULL; |
|
736 CAiwMenuPane* aiwPane = CreateAiwMenuPaneLC( &eikPane ); |
|
737 |
|
738 // ResourceFile is empty |
|
739 delete iProvider->iResourceFileName; |
|
740 |
|
741 iProvider->iResourceFileName = NULL ; |
|
742 iProvider->InitializeMenuPaneL( *aiwPane, 0, 0, *list ); |
|
743 EUNIT_ASSERT( iProvider->iResourceFileName != NULL ) |
|
744 |
|
745 // Options supported, available, mus shown in menu |
|
746 // |
|
747 MultimediaSharingSettings::SetPropertyValueL( |
|
748 MusSettingsKeys::KFastStartupMode, MusSettingsKeys::EFastModeOn ); |
|
749 |
|
750 MultimediaSharingSettings::SetCapabilityQuerySettingL( |
|
751 MusSettingsKeys::EParallel ); |
|
752 |
|
753 CMusManager::SetAvailability(MultimediaSharing::EMultimediaSharingAvailable); |
|
754 TInt menuPaneCount = eikPane->NumberOfItemsInPane(); |
|
755 iProvider->InitializeMenuPaneL( *aiwPane, 0, 0, *list ); |
|
756 |
|
757 MUS_CHECK_MEMORY_LEAVE( eikPane->NumberOfItemsInPane() == menuPaneCount + 3 ) |
|
758 |
|
759 CleanupStack::PopAndDestroy( aiwPane ); |
|
760 CleanupStack::PopAndDestroy( list ); |
|
761 BaflUtils::DeleteFile( fs, KResourceFilenameRom() ); |
|
762 |
|
763 CleanupStack::PopAndDestroy(); // fs |
|
764 } |
|
765 |
|
766 // ----------------------------------------------------------------------------- |
781 // ----------------------------------------------------------------------------- |
767 // |
782 // |
768 // ----------------------------------------------------------------------------- |
783 // ----------------------------------------------------------------------------- |
769 // |
784 // |
770 void UT_CMusAiwProvider::UT_CMusAiwProvider_HandleMenuCmdLL() |
785 void UT_CMusAiwProvider::UT_CMusAiwProvider_HandleMenuCmdLL() |
775 |
790 |
776 iProvider->HandleMenuCmdL( EMusCommandLiveShare, *pl, *pl, 0, this ); |
791 iProvider->HandleMenuCmdL( EMusCommandLiveShare, *pl, *pl, 0, this ); |
777 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusLiveVideo ) |
792 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusLiveVideo ) |
778 |
793 |
779 iProvider->HandleMenuCmdL( EMusCommandClipShare, *pl, *pl, 0, this ); |
794 iProvider->HandleMenuCmdL( EMusCommandClipShare, *pl, *pl, 0, this ); |
780 MUS_CHECK_MEMORY_LEAVE( CMusManager::UseCase() == MultimediaSharing::EMusClipVideo ) |
|
781 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusClipVideo ) |
795 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusClipVideo ) |
782 |
796 |
783 iProvider->HandleMenuCmdL( EMusCommandImageShare, *pl, *pl, 0, this ); |
797 iProvider->HandleMenuCmdL( EMusCommandImageShare, *pl, *pl, 0, this ); |
784 MUS_CHECK_MEMORY_LEAVE( CMusManager::UseCase() == MultimediaSharing::EMusStillImage ) |
|
785 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusStillImage ) |
798 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusStillImage ) |
786 |
799 |
787 iProvider->HandleMenuCmdL( EMusCommandContinue, *pl, *pl, 0, this ); |
800 iProvider->HandleMenuCmdL( EMusCommandContinue, *pl, *pl, 0, this ); |
788 MUS_CHECK_MEMORY_LEAVE( CMusManager::UseCase() == MultimediaSharing::EMusContinue ) |
|
789 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusContinue ) |
801 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusContinue ) |
790 |
802 |
791 CMusManager::SetStartError( |
803 CMusManager::SetStartError( |
792 ( MultimediaSharing::TMusAvailabilityStatus ) KErrNotFound ); |
804 ( MultimediaSharing::TMusAvailabilityStatus ) KErrNotFound ); |
793 |
805 |
824 |
836 |
825 // ----------------------------------------------------------------------------- |
837 // ----------------------------------------------------------------------------- |
826 // |
838 // |
827 // ----------------------------------------------------------------------------- |
839 // ----------------------------------------------------------------------------- |
828 // |
840 // |
829 void UT_CMusAiwProvider::UT_CMusAiwProvider_HandleMenuCmdLFastModeL() |
|
830 { |
|
831 CAiwGenericParamList* pl = CAiwGenericParamList::NewLC(); |
|
832 |
|
833 MultimediaSharingSettings::SetPropertyValueL( |
|
834 MusSettingsKeys::KFastStartupMode, MusSettingsKeys::EFastModeOn ); |
|
835 |
|
836 // Fast mode, start live sharing (handle normally) |
|
837 CMusManager::SetUseCase( MultimediaSharing::EMusContinue ); |
|
838 iProvider->HandleMenuCmdL( EMusCommandLiveShare, *pl, *pl, 0, this ); |
|
839 MUS_CHECK_MEMORY_LEAVE( CMusManager::UseCase() == MultimediaSharing::EMusLiveVideo ) |
|
840 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusLiveVideo ) |
|
841 |
|
842 // Fast mode, start clip sharing, app not running nor hidden (handle normally) |
|
843 CMusManager::SetUseCase( MultimediaSharing::EMusContinue ); |
|
844 iProvider->HandleMenuCmdL( EMusCommandClipShare, *pl, *pl, 0, this ); |
|
845 MUS_CHECK_MEMORY_LEAVE( CMusManager::UseCase() == MultimediaSharing::EMusClipVideo ) |
|
846 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusClipVideo ) |
|
847 |
|
848 // Fast mode, start clip sharing, app running and hidden (mus mgr is not |
|
849 // used for starting application, only usecase P&S value is changed) |
|
850 CMusManager::SetUseCase( MultimediaSharing::EMusContinue ); |
|
851 |
|
852 TApaTask::iApplicationExist = ETrue; |
|
853 |
|
854 TBuf16< 10 > listOkMus; |
|
855 TUint16 upperBits = KMusUiUid >> 16; |
|
856 listOkMus.Append( upperBits ); |
|
857 listOkMus.Append( KMusUiUid ); |
|
858 listOkMus.Append( 0 ); |
|
859 listOkMus.Append( 0 ); |
|
860 RProperty::Set( KPSUidUikon, KUikAppHiddenList, listOkMus ); |
|
861 |
|
862 RProperty::Set( NMusSessionApi::KCategoryUid, NMusSessionApi::KUseCase, MultimediaSharing::EMusContinue ); |
|
863 |
|
864 iProvider->HandleMenuCmdL( EMusCommandClipShare, *pl, *pl, 0, this ); |
|
865 EUNIT_ASSERT( CMusManager::UseCase() == MultimediaSharing::EMusContinue ) |
|
866 |
|
867 TInt usecaseAfterFakeStart( 0 ); |
|
868 RProperty::Get( NMusSessionApi::KCategoryUid, NMusSessionApi::KUseCase, usecaseAfterFakeStart ); |
|
869 EUNIT_ASSERT( usecaseAfterFakeStart == MultimediaSharing::EMusClipVideo ); |
|
870 |
|
871 CleanupStack::PopAndDestroy( pl ); |
|
872 |
|
873 } |
|
874 |
|
875 // ----------------------------------------------------------------------------- |
|
876 // |
|
877 // ----------------------------------------------------------------------------- |
|
878 // |
|
879 void UT_CMusAiwProvider::UT_CMusAiwProvider_ApplicationRunningLL() |
841 void UT_CMusAiwProvider::UT_CMusAiwProvider_ApplicationRunningLL() |
880 { |
842 { |
881 TApaTask::iApplicationExist = EFalse; |
843 // Stub returns EFalse as default |
882 EUNIT_ASSERT( !iProvider->ApplicationRunningL() ) |
844 EUNIT_ASSERT( !iProvider->ApplicationRunningL() ) |
883 |
845 |
884 // Use stub to mimic the existence of application |
846 // Use stub to mimic the existence of application |
885 TApaTask::iApplicationExist = ETrue; |
847 TApaTask::iApplicationExist = ETrue; |
886 |
848 |
1007 // Dummy test just to raise coverage |
969 // Dummy test just to raise coverage |
1008 TInt tableCount; |
970 TInt tableCount; |
1009 ImplementationGroupProxy( tableCount ); |
971 ImplementationGroupProxy( tableCount ); |
1010 } |
972 } |
1011 |
973 |
1012 // ----------------------------------------------------------------------------- |
974 |
1013 // |
975 |
1014 // ----------------------------------------------------------------------------- |
|
1015 // |
|
1016 void UT_CMusAiwProvider::UT_HiddenFromFastSwapL() |
|
1017 { |
|
1018 // Normal mode |
|
1019 MultimediaSharingSettings::SetPropertyValueL( |
|
1020 MusSettingsKeys::KFastStartupMode, MusSettingsKeys::EFastModeOff ); |
|
1021 EUNIT_ASSERT( !iProvider->HiddenFromFastSwapL() ) |
|
1022 |
|
1023 // Fast mode |
|
1024 // |
|
1025 MultimediaSharingSettings::SetPropertyValueL( |
|
1026 MusSettingsKeys::KFastStartupMode, MusSettingsKeys::EFastModeOn ); |
|
1027 |
|
1028 // Key not found |
|
1029 PropertyHelper::SetErrorCode( KErrNotFound ); |
|
1030 EUNIT_ASSERT( !iProvider->HiddenFromFastSwapL() ) |
|
1031 |
|
1032 // Malformed key value |
|
1033 PropertyHelper::SetErrorCode( KErrNone ); |
|
1034 TBuf16< 5 > listMalformed; |
|
1035 listMalformed.Copy( _L("05645") ); |
|
1036 RProperty::Set( KPSUidUikon, KUikAppHiddenList, listMalformed ); |
|
1037 MUS_EUNIT_ASSERT_SPECIFIC_LEAVE( iProvider->HiddenFromFastSwapL(), KErrEof ); |
|
1038 |
|
1039 // No musuid in value list |
|
1040 TBuf16< 6 > listOkNoMus; |
|
1041 TUint32 uid1 = 10002000; |
|
1042 TUint32 uid2 = 20003000; |
|
1043 // avkoncapserver publishes values in following manner |
|
1044 TUint16 upperBits = uid1 >> 16; |
|
1045 listOkNoMus.Append( upperBits ); |
|
1046 listOkNoMus.Append( uid1 ); |
|
1047 upperBits = uid2 >> 16; |
|
1048 listOkNoMus.Append( upperBits ); |
|
1049 listOkNoMus.Append( uid2 ); |
|
1050 listOkNoMus.Append( 0 ); |
|
1051 listOkNoMus.Append( 0 ); |
|
1052 RProperty::Set( KPSUidUikon, KUikAppHiddenList, listOkNoMus ); |
|
1053 EUNIT_ASSERT( !iProvider->HiddenFromFastSwapL() ) |
|
1054 |
|
1055 // Musuid in value list |
|
1056 TBuf16< 10 > listOkMus; |
|
1057 TUint32 uid3 = 30005000; |
|
1058 upperBits = uid1 >> 16; |
|
1059 listOkMus.Append( upperBits ); |
|
1060 listOkMus.Append( uid1 ); |
|
1061 upperBits = uid2 >> 16; |
|
1062 listOkMus.Append( upperBits ); |
|
1063 listOkMus.Append( uid2 ); |
|
1064 |
|
1065 upperBits = KMusUiUid >> 16; |
|
1066 listOkMus.Append( upperBits ); |
|
1067 listOkMus.Append( KMusUiUid ); |
|
1068 |
|
1069 upperBits = uid3 >> 16; |
|
1070 listOkMus.Append( upperBits ); |
|
1071 listOkMus.Append( uid3 ); |
|
1072 |
|
1073 listOkMus.Append( 0 ); |
|
1074 listOkMus.Append( 0 ); |
|
1075 RProperty::Set( KPSUidUikon, KUikAppHiddenList, listOkMus ); |
|
1076 EUNIT_ASSERT( iProvider->HiddenFromFastSwapL() ) |
|
1077 } |
|
1078 |
|
1079 // HELPERS |
|
1080 |
|
1081 CAiwMenuPane* UT_CMusAiwProvider::CreateAiwMenuPaneLC( CEikMenuPane** aEikPane ) |
|
1082 { |
|
1083 CEikMenuPane* eikPane = new( ELeave ) CEikMenuPane( this ); |
|
1084 CleanupStack::PushL( eikPane ); |
|
1085 |
|
1086 // Constructing eikPane is not compulsory for testing and leads to a memory |
|
1087 // leak. |
|
1088 //eikPane->ConstructL( NULL, this ); |
|
1089 |
|
1090 CAiwMenuPane* aiwPane = new( ELeave ) CAiwMenuPane( *eikPane, 0 ); //Takes ownership |
|
1091 CleanupStack::Pop( eikPane ); |
|
1092 CleanupStack::PushL( aiwPane ); |
|
1093 *aEikPane = eikPane; |
|
1094 return aiwPane; |
|
1095 } |
|
1096 |
976 |
1097 // TEST TABLE |
977 // TEST TABLE |
1098 |
978 |
1099 EUNIT_BEGIN_TEST_TABLE( |
979 EUNIT_BEGIN_TEST_TABLE( |
1100 UT_CMusAiwProvider, |
980 UT_CMusAiwProvider, |
1151 "InitializeMenuPaneL - test6", |
1031 "InitializeMenuPaneL - test6", |
1152 "CMusAiwProvider", |
1032 "CMusAiwProvider", |
1153 "InitializeMenuPaneL", |
1033 "InitializeMenuPaneL", |
1154 "FUNCTIONALITY", |
1034 "FUNCTIONALITY", |
1155 SetupL, UT_CMusAiwProvider_InitializeMenuPaneL6L, Teardown) |
1035 SetupL, UT_CMusAiwProvider_InitializeMenuPaneL6L, Teardown) |
1156 |
1036 |
1157 EUNIT_TEST( |
1037 EUNIT_TEST( |
1158 "InitializeMenuPaneL - fast mode", |
1038 "InitializeMenuPaneL - test7", |
1159 "CMusAiwProvider", |
1039 "CMusAiwProvider", |
1160 "InitializeMenuPaneL", |
1040 "InitializeMenuPaneL", |
1161 "FUNCTIONALITY", |
1041 "FUNCTIONALITY", |
1162 SetupL, UT_CMusAiwProvider_InitializeMenuPaneLFastModeL, Teardown) |
1042 SetupL, UT_CMusAiwProvider_InitializeMenuPaneL7L, Teardown) |
1163 |
1043 |
1164 EUNIT_TEST( |
|
1165 "InitializeMenuPaneL - fast mode 2", |
|
1166 "CMusAiwProvider", |
|
1167 "InitializeMenuPaneL", |
|
1168 "FUNCTIONALITY", |
|
1169 SetupL, UT_CMusAiwProvider_InitializeMenuPaneLFastMode2L, Teardown) |
|
1170 |
|
1171 EUNIT_TEST( |
1044 EUNIT_TEST( |
1172 "HandleMenuCmdL - test", |
1045 "HandleMenuCmdL - test", |
1173 "CMusAiwProvider", |
1046 "CMusAiwProvider", |
1174 "HandleMenuCmdL", |
1047 "HandleMenuCmdL", |
1175 "FUNCTIONALITY", |
1048 "FUNCTIONALITY", |
1176 SetupL, UT_CMusAiwProvider_HandleMenuCmdLL, Teardown) |
1049 SetupL, UT_CMusAiwProvider_HandleMenuCmdLL, Teardown) |
1177 |
1050 |
1178 EUNIT_TEST( |
1051 EUNIT_TEST( |
1179 "HandleMenuCmdL - fastmode test", |
|
1180 "CMusAiwProvider", |
|
1181 "HandleMenuCmdL", |
|
1182 "FUNCTIONALITY", |
|
1183 SetupL, UT_CMusAiwProvider_HandleMenuCmdLFastModeL, Teardown) |
|
1184 |
|
1185 EUNIT_TEST( |
|
1186 "ApplicationRunningL - test", |
1052 "ApplicationRunningL - test", |
1187 "CMusAiwProvider", |
1053 "CMusAiwProvider", |
1188 "ApplicationRunningL", |
1054 "ApplicationRunningL", |
1189 "FUNCTIONALITY", |
1055 "FUNCTIONALITY", |
1190 SetupL, UT_CMusAiwProvider_ApplicationRunningLL, Teardown) |
1056 SetupL, UT_CMusAiwProvider_ApplicationRunningLL, Teardown) |