[ITC][sound-manager][ACR-1781] Added TCs for effect methd set APIs 10/296310/2
authorShobhit Verma <shobhit.v@samsung.com>
Tue, 25 Jul 2023 08:52:51 +0000 (14:22 +0530)
committerShobhit Verma <shobhit.v@samsung.com>
Tue, 25 Jul 2023 10:11:43 +0000 (15:41 +0530)
Change-Id: I7dc11c035d736a86a800de07f539969f61aa4526
Signed-off-by: Shobhit Verma <shobhit.v@samsung.com>
src/itc/sound-manager/ITs-sound-manager-stream.c
src/itc/sound-manager/tct-sound-manager-native_mobile.h
src/itc/sound-manager/tct-sound-manager-native_tizeniot.h
src/itc/sound-manager/tct-sound-manager-native_tv.h
src/itc/sound-manager/tct-sound-manager-native_wearable.h

index 9a84ded27b65562fe5b7f276857648b147ca5311..d9ac13c5ba676e16f15c7b1de9b0139d454f183c 100755 (executable)
@@ -1147,3 +1147,125 @@ int ITc_sound_manager_set_get_stream_prefered_device_p(void)
 
        return 0;
 }
+
+
+//& purpose: To Set and get the value of effect methods
+//& type : auto
+/**
+* @testcase                    ITc_sound_manager_set_get_effect_method_p
+* @since_tizen                         8.0
+* @author                      SRID(shobhit.v)
+* @reviewer                    SRID(utk.tiwari)
+* @type                        auto
+* @description                 Sets and Get the value of effect methods
+* @scenario                    Sets the value of effect methods and get the same
+* @apicovered                  sound_manager_create_stream_information, sound_manager_set_effect_method and sound_manager_get_effect_method
+* @passcase                    When APIs return SOUND_MANAGER_ERROR_NONE
+* @failcase                    When APIs not return SOUND_MANAGER_ERROR_NONE
+* @precondition                        None
+* @postcondition               None
+*/
+int ITc_sound_manager_set_get_effect_method_p(void)
+{
+       START_TEST;
+       int nRet = -1, nEnumLoopCount = 0, methods = -1;
+       sound_stream_info_h stream_info;
+       sound_effect_method_e effect_type[]= {
+               SOUND_EFFECT_NOISE_SUPPRESSION_VOIP, /**< Noise suppression for voice call */
+               SOUND_EFFECT_AUTOMATIC_GAIN_CONTROL_CAPTURE, /**< Auto Gain Control for normal capturing */
+       };
+       int nSoundEffectCount = sizeof(effect_type) / sizeof(effect_type[0]);
+
+       for ( nEnumLoopCount = 0; nEnumLoopCount < nSoundEffectCount; nEnumLoopCount++ )
+       {
+
+               nRet = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, sound_stream_focus_state_changed_callback, NULL, &stream_info);
+               PRINT_RESULT(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_create_stream_information", SoundManagerGetError(nRet));
+               CHECK_HANDLE(stream_info, "sound_manager_create_stream_information");
+
+               nRet = sound_manager_set_effect_method(stream_info, effect_type[nEnumLoopCount]);
+               PRINT_RESULT_CLEANUP(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_set_effect_method", SoundManagerGetError(nRet), sound_manager_destroy_stream_information(stream_info));
+
+               nRet = sound_manager_get_effect_method(stream_info, &methods);
+               PRINT_RESULT_CLEANUP(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_get_effect_method", SoundManagerGetError(nRet), sound_manager_destroy_stream_information(stream_info));
+               if (methods != effect_type[nEnumLoopCount])
+               {
+                       FPRINTF("[Line : %d][%s] Set and Get value mismatch. Set value: %d, Get Value: %d", __LINE__, API_NAMESPACE, effect_type[nEnumLoopCount], methods);
+                       sound_manager_destroy_stream_information(stream_info);
+                       return 1;
+               }
+
+               nRet = sound_manager_destroy_stream_information(stream_info);
+               PRINT_RESULT(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_destroy_stream_information", SoundManagerGetError(nRet));
+       }
+       return 0;
+}
+
+
+//& purpose: To Set and Get the value of effect methods with a reference device
+//& type : auto
+/**
+* @testcase                    ITc_sound_manager_set_get_effect_method_with_reference_p
+* @since_tizen                         8.0
+* @author                      SRID(shobhit.v)
+* @reviewer                    SRID(utk.tiwari)
+* @type                        auto
+* @description                 Sets and Get the value of effect methods with a reference device
+* @scenario                    Sets the value of effect methods with a reference device and get the same
+* @apicovered                  sound_manager_create_stream_information, sound_manager_set_effect_method_with_reference and sound_manager_get_effect_method_with_reference
+* @passcase                    When APIs return SOUND_MANAGER_ERROR_NONE
+* @failcase                    When APIs not return SOUND_MANAGER_ERROR_NONE
+* @precondition                        None
+* @postcondition               None
+*/
+int ITc_sound_manager_set_get_effect_method_with_reference_p(void)
+{
+       START_TEST;
+       int nRet = -1, nEnumLoopCount = 0, device_id;
+       sound_stream_info_h stream_info;
+       sound_device_list_h device_list = NULL;
+       sound_device_h device = NULL;
+       sound_effect_method_with_reference_e method;
+
+       sound_effect_method_with_reference_e  effect_type[] = {
+               SOUND_EFFECT_REFERENCE_COPY, /**< Including reference source */
+               SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_SPEEX, /**< Acoustic echo cancel with speex */
+               SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_WEBRTC, /**< Acoustic echo cancel with webrtc */
+       };
+
+       int nSoundEffectCount = sizeof(effect_type) / sizeof(effect_type[0]);
+
+       nRet = sound_manager_get_device_list(SOUND_DEVICE_ALL_MASK, &device_list);
+       PRINT_RESULT(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_get_device_list", SoundManagerGetError(nRet));
+
+       nRet = sound_manager_get_next_device(device_list, &device);
+       PRINT_RESULT(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_get_next_device", SoundManagerGetError(nRet));
+       CHECK_HANDLE(device, "sound_manager_get_next_device");
+
+       nRet = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, sound_stream_focus_state_changed_callback, NULL, &stream_info);
+       PRINT_RESULT(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_create_stream_information", SoundManagerGetError(nRet));
+       CHECK_HANDLE(stream_info, "sound_manager_create_stream_information");
+
+       for ( nEnumLoopCount = 0; nEnumLoopCount < nSoundEffectCount; nEnumLoopCount++ )
+       {
+               nRet = sound_manager_set_effect_method_with_reference(stream_info, effect_type[nEnumLoopCount], device);
+               PRINT_RESULT_CLEANUP(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_set_effect_method_with_reference", SoundManagerGetError(nRet), sound_manager_destroy_stream_information(stream_info);sound_manager_free_device_list(device_list));
+
+               nRet = sound_manager_get_effect_method_with_reference(stream_info, &method, &device_id);
+               PRINT_RESULT_CLEANUP(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_get_effect_method_with_reference", SoundManagerGetError(nRet), sound_manager_destroy_stream_information(stream_info);sound_manager_free_device_list(device_list));
+
+               if (method != effect_type[nEnumLoopCount])
+               {
+                       FPRINTF("[Line : %d][%s] Set and Get value mismatch. Set value: %d, Get Value: %d", __LINE__, API_NAMESPACE, effect_type[nEnumLoopCount], method);
+                       sound_manager_destroy_stream_information(stream_info);
+                       sound_manager_free_device_list(device_list);
+                       return 1;
+               }
+       }
+       nRet = sound_manager_destroy_stream_information(stream_info);
+       PRINT_RESULT_CLEANUP(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_destroy_stream_information", SoundManagerGetError(nRet), sound_manager_free_device_list(device_list));
+
+       nRet = sound_manager_free_device_list(device_list);
+       PRINT_RESULT_NORETURN(SOUND_MANAGER_ERROR_NONE, nRet, "sound_manager_free_device_list", SoundManagerGetError(nRet));
+       return 0;
+}
index f9dfe6d453a9fa504dd3fb3d31e1b930f7f4f30f..e1e35804340b30da6a41400ab19cc0af03b3fac9 100755 (executable)
@@ -65,6 +65,8 @@ extern int ITc_sound_manager_activate_deactivate_ducking_p(void);
 extern int ITc_sound_manager_is_ducked_p(void);
 extern int ITc_sound_manager_create_destroy_stream_ducking_p(void);
 extern int ITc_sound_manager_set_get_stream_prefered_device_p(void);
+extern int ITc_sound_manager_set_get_effect_method_p(void);
+extern int ITc_sound_manager_set_get_effect_method_with_reference_p(void);
 
 testcase tc_array[] = {
        {"ITc_sound_manager_get_next_device_free_device_p", ITc_sound_manager_get_next_device_free_device_p, ITs_sound_manager_device_startup, ITs_sound_manager_device_cleanup},
@@ -106,6 +108,8 @@ testcase tc_array[] = {
        {"ITc_sound_manager_is_ducked_p", ITc_sound_manager_is_ducked_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
        {"ITc_sound_manager_create_destroy_stream_ducking_p", ITc_sound_manager_create_destroy_stream_ducking_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
        {"ITc_sound_manager_set_get_stream_prefered_device_p", ITc_sound_manager_set_get_stream_prefered_device_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
+       {"ITc_sound_manager_set_get_effect_method_p", ITc_sound_manager_set_get_effect_method_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
+       {"ITc_sound_manager_set_get_effect_method_with_reference_p", ITc_sound_manager_set_get_effect_method_with_reference_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},             
        {NULL, NULL}
 };
 
index f9dfe6d453a9fa504dd3fb3d31e1b930f7f4f30f..67e0f16eb7e79a18d1baec926a3699f7ad3bef9c 100755 (executable)
@@ -65,6 +65,8 @@ extern int ITc_sound_manager_activate_deactivate_ducking_p(void);
 extern int ITc_sound_manager_is_ducked_p(void);
 extern int ITc_sound_manager_create_destroy_stream_ducking_p(void);
 extern int ITc_sound_manager_set_get_stream_prefered_device_p(void);
+extern int ITc_sound_manager_set_get_effect_method_p(void);
+extern int ITc_sound_manager_set_get_effect_method_with_reference_p(void);
 
 testcase tc_array[] = {
        {"ITc_sound_manager_get_next_device_free_device_p", ITc_sound_manager_get_next_device_free_device_p, ITs_sound_manager_device_startup, ITs_sound_manager_device_cleanup},
@@ -106,6 +108,8 @@ testcase tc_array[] = {
        {"ITc_sound_manager_is_ducked_p", ITc_sound_manager_is_ducked_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
        {"ITc_sound_manager_create_destroy_stream_ducking_p", ITc_sound_manager_create_destroy_stream_ducking_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
        {"ITc_sound_manager_set_get_stream_prefered_device_p", ITc_sound_manager_set_get_stream_prefered_device_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
+       {"ITc_sound_manager_set_get_effect_method_p", ITc_sound_manager_set_get_effect_method_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
+       {"ITc_sound_manager_set_get_effect_method_with_reference_p", ITc_sound_manager_set_get_effect_method_with_reference_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},     
        {NULL, NULL}
 };
 
index f9dfe6d453a9fa504dd3fb3d31e1b930f7f4f30f..67e0f16eb7e79a18d1baec926a3699f7ad3bef9c 100755 (executable)
@@ -65,6 +65,8 @@ extern int ITc_sound_manager_activate_deactivate_ducking_p(void);
 extern int ITc_sound_manager_is_ducked_p(void);
 extern int ITc_sound_manager_create_destroy_stream_ducking_p(void);
 extern int ITc_sound_manager_set_get_stream_prefered_device_p(void);
+extern int ITc_sound_manager_set_get_effect_method_p(void);
+extern int ITc_sound_manager_set_get_effect_method_with_reference_p(void);
 
 testcase tc_array[] = {
        {"ITc_sound_manager_get_next_device_free_device_p", ITc_sound_manager_get_next_device_free_device_p, ITs_sound_manager_device_startup, ITs_sound_manager_device_cleanup},
@@ -106,6 +108,8 @@ testcase tc_array[] = {
        {"ITc_sound_manager_is_ducked_p", ITc_sound_manager_is_ducked_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
        {"ITc_sound_manager_create_destroy_stream_ducking_p", ITc_sound_manager_create_destroy_stream_ducking_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
        {"ITc_sound_manager_set_get_stream_prefered_device_p", ITc_sound_manager_set_get_stream_prefered_device_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
+       {"ITc_sound_manager_set_get_effect_method_p", ITc_sound_manager_set_get_effect_method_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
+       {"ITc_sound_manager_set_get_effect_method_with_reference_p", ITc_sound_manager_set_get_effect_method_with_reference_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},     
        {NULL, NULL}
 };
 
index f9dfe6d453a9fa504dd3fb3d31e1b930f7f4f30f..e1e35804340b30da6a41400ab19cc0af03b3fac9 100755 (executable)
@@ -65,6 +65,8 @@ extern int ITc_sound_manager_activate_deactivate_ducking_p(void);
 extern int ITc_sound_manager_is_ducked_p(void);
 extern int ITc_sound_manager_create_destroy_stream_ducking_p(void);
 extern int ITc_sound_manager_set_get_stream_prefered_device_p(void);
+extern int ITc_sound_manager_set_get_effect_method_p(void);
+extern int ITc_sound_manager_set_get_effect_method_with_reference_p(void);
 
 testcase tc_array[] = {
        {"ITc_sound_manager_get_next_device_free_device_p", ITc_sound_manager_get_next_device_free_device_p, ITs_sound_manager_device_startup, ITs_sound_manager_device_cleanup},
@@ -106,6 +108,8 @@ testcase tc_array[] = {
        {"ITc_sound_manager_is_ducked_p", ITc_sound_manager_is_ducked_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
        {"ITc_sound_manager_create_destroy_stream_ducking_p", ITc_sound_manager_create_destroy_stream_ducking_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
        {"ITc_sound_manager_set_get_stream_prefered_device_p", ITc_sound_manager_set_get_stream_prefered_device_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
+       {"ITc_sound_manager_set_get_effect_method_p", ITc_sound_manager_set_get_effect_method_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},
+       {"ITc_sound_manager_set_get_effect_method_with_reference_p", ITc_sound_manager_set_get_effect_method_with_reference_p, ITs_sound_manager_stream_startup, ITs_sound_manager_stream_cleanup},             
        {NULL, NULL}
 };