- Add a TC to test the tensor_src_tizensensor element, which integrates Tizen sensor framework to NNStreamer tensor-source filter
Change-Id: I41434ec1e6f93da2b4914bf2f568fbbae2c2cc85
Signed-off-by: Yongjoo Ahn <yongjoo1.ahn@samsung.com>
return 0;
}
+/**
+* @testcase ITc_nnstreamer_pipeline_tizensensor_p
+* @since_tizen 6.0
+* @author SR(yongjoo1.ahn)
+* @reviewer SRID(shobhit.v)
+* @type auto
+* @description Test the tensor_src_tizensensor element which integrates Tizen sensor framework to NNStreamer tensor-source filter
+* @scenario Test pipeline with tensor_src_tizensensor element
+* @apicovered ml_pipline_construct, ml_pipeline_start, ml_pipeline_stop, ml_pipeline_destroy
+* @passcase When the pipeline is successfully launched or the accelerometer sensor is not supported.
+* @failcase If target API fails or any precondition API fails
+* @precondition None
+* @postcondition None
+*/
+//& purpose: API to test tensor_src_tizensensor element
+//& type: auto
+int ITc_nnstreamer_pipeline_tizensensor_p(void)
+{
+ START_TEST;
+ int nRet = -1;
+ ml_pipeline_h hMlPipeline = NULL;
+ bool isAccelerometerAvailable = false;
+ char *pszPipeLine = "tensor_src_tizensensor type=accelerometer framerate=100/1 ! tensor_sink sync=true";
+
+ isAccelerometerAvailable = TCTCheckSystemInfoFeatureSupported("http://tizen.org/feature/sensor.accelerometer", API_NAMESPACE);
+
+ if (!isAccelerometerAvailable) {
+ /* Do not run this test if the accelerometer sensor is not supported */
+ FPRINTF("[Line : %d][%s] sensor.accelerometer is NOT supported\\n", __LINE__, API_NAMESPACE);
+ dlog_print(DLOG_INFO, "NativeTCT", "[Line:%d][%s] sensor.accelerometer is NOT supported", __LINE__, API_NAMESPACE);
+ return 0;
+ }
+
+ nRet = ml_pipeline_construct (pszPipeLine, NULL, NULL, &hMlPipeline);
+ PRINT_RESULT(ML_ERROR_NONE, nRet, "ml_pipeline_construct", NnStreamerGetError(nRet));
+ CHECK_HANDLE(hMlPipeline, "ml_pipeline_construct");
+
+ nRet = ml_pipeline_start (hMlPipeline);
+ PRINT_RESULT_CLEANUP(ML_ERROR_NONE, nRet, "ml_pipeline_start", NnStreamerGetError (nRet), ml_pipeline_destroy (hMlPipeline));
+
+ sleep (1);
+
+ nRet = ml_pipeline_stop (hMlPipeline);
+ PRINT_RESULT_CLEANUP(ML_ERROR_NONE, nRet, "ml_pipeline_stop", NnStreamerGetError (nRet), ml_pipeline_destroy (hMlPipeline));
+
+ nRet = ml_pipeline_destroy (hMlPipeline);
+ PRINT_RESULT(ML_ERROR_NONE, nRet, "ml_pipeline_destroy", NnStreamerGetError(nRet));
+
+ return 0;
+}
+
/** @} */
/** @} */
extern int ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p (void);
extern int ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p (void);
extern int ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p (void);
+extern int ITc_nnstreamer_pipeline_tizensensor_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_clone_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_validate_p (void);
{"ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p", ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p, ITs_nnstreamer_pipeline_switch_startup, ITs_nnstreamer_pipeline_switch_cleanup},
{"ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p", ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
{"ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p", ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
+{"ITc_nnstreamer_pipeline_tizensensor_p", ITc_nnstreamer_pipeline_tizensensor_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p", ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_clone_p", ITc_nnstreamer_tensors_ml_tensors_info_clone_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_validate_p", ITc_nnstreamer_tensors_ml_tensors_info_validate_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},
extern int ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p (void);
extern int ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p (void);
extern int ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p (void);
+extern int ITc_nnstreamer_pipeline_tizensensor_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_clone_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_validate_p (void);
{"ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p", ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p, ITs_nnstreamer_pipeline_switch_startup, ITs_nnstreamer_pipeline_switch_cleanup},
{"ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p", ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
{"ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p", ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
+{"ITc_nnstreamer_pipeline_tizensensor_p", ITc_nnstreamer_pipeline_tizensensor_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p", ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_clone_p", ITc_nnstreamer_tensors_ml_tensors_info_clone_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_validate_p", ITc_nnstreamer_tensors_ml_tensors_info_validate_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},
extern int ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p (void);
extern int ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p (void);
extern int ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p (void);
+extern int ITc_nnstreamer_pipeline_tizensensor_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_clone_p (void);
extern int ITc_nnstreamer_tensors_ml_tensors_info_validate_p (void);
{"ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p", ITc_nnstreamer_pipeline_ml_pipeline_switch_get_pad_list_p, ITs_nnstreamer_pipeline_switch_startup, ITs_nnstreamer_pipeline_switch_cleanup},
{"ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p", ITc_nnstreamer_pipeline_ml_pipeline_valve_get_release_handle_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
{"ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p", ITc_nnstreamer_pipeline_ml_pipeline_valve_set_open_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
+{"ITc_nnstreamer_pipeline_tizensensor_p", ITc_nnstreamer_pipeline_tizensensor_p, ITs_nnstreamer_pipeline_startup, ITs_nnstreamer_pipeline_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p", ITc_nnstreamer_tensors_ml_tensors_info_create_destroy_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_clone_p", ITc_nnstreamer_tensors_ml_tensors_info_clone_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},
{"ITc_nnstreamer_tensors_ml_tensors_info_validate_p", ITc_nnstreamer_tensors_ml_tensors_info_validate_p, ITs_nnstreamer_tensors_startup, ITs_nnstreamer_tensors_cleanup},