diff options
author | jy910.yun <jy910.yun@samsung.com> | 2012-08-21 19:11:00 +0900 |
---|---|---|
committer | jy910.yun <jy910.yun@samsung.com> | 2012-08-21 19:11:00 +0900 |
commit | 084b8672dd390c1338a7949ebe91ad76f081a29e (patch) | |
tree | 2f6a5a833bbd67aaee97bb644d4b739a38b40f3c /TC | |
parent | 24c06363581c4713b198e0c12d6c01ae380da000 (diff) | |
download | haptic-2.0alpha.tar.gz haptic-2.0alpha.tar.bz2 haptic-2.0alpha.zip |
patch tizen_2.0_buildHEADsubmit/master/20120920.1510252.0_alphamaster2.0alpha
Diffstat (limited to 'TC')
-rwxr-xr-x | TC/_export_env.sh | 8 | ||||
-rwxr-xr-x | TC/_export_target_env.sh | 7 | ||||
-rwxr-xr-x | TC/build.sh | 16 | ||||
-rwxr-xr-x | TC/clean.sh | 11 | ||||
-rw-r--r-- | TC/config | 2 | ||||
-rwxr-xr-x | TC/execute.sh | 15 | ||||
-rwxr-xr-x | TC/testcase/Makefile | 28 | ||||
-rw-r--r-- | TC/testcase/tslist | 2 | ||||
-rw-r--r-- | TC/testcase/utc_system_haptic_basic.c | 114 | ||||
-rw-r--r-- | TC/testcase/utc_system_haptic_play.c | 214 | ||||
-rwxr-xr-x | TC/tet_scen | 7 | ||||
-rw-r--r-- | TC/tetbuild.cfg | 5 | ||||
-rw-r--r-- | TC/tetclean.cfg | 5 | ||||
-rw-r--r-- | TC/tetexec.cfg | 5 |
14 files changed, 439 insertions, 0 deletions
diff --git a/TC/_export_env.sh b/TC/_export_env.sh new file mode 100755 index 0000000..72a11ec --- /dev/null +++ b/TC/_export_env.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +. ./config +export TET_INSTALL_PATH=$TET_INSTALL_HOST_PATH # tetware root path +export TET_TARGET_PATH=$TET_INSTALL_PATH/tetware-target # tetware target path +export PATH=$TET_TARGET_PATH/bin:$PATH +export LD_LIBRARY_PATH=$TET_TARGET_PATH/lib/tet3:$LD_LIBRARY_PATH +export TET_ROOT=$TET_TARGET_PATH diff --git a/TC/_export_target_env.sh b/TC/_export_target_env.sh new file mode 100755 index 0000000..5ddaa53 --- /dev/null +++ b/TC/_export_target_env.sh @@ -0,0 +1,7 @@ +#!/bin/sh +. ./config +export TET_INSTALL_PATH=$TET_INSTALL_TARGET_PATH # path to path +export TET_TARGET_PATH=$TET_INSTALL_PATH/tetware-target +export PATH=$TET_TARGET_PATH/bin:$PATH +export LD_LIBRARY_PATH=$TET_TARGET_PATH/lib/tet3:$LD_LIBRARY_PATH +export TET_ROOT=$TET_TARGET_PATH diff --git a/TC/build.sh b/TC/build.sh new file mode 100755 index 0000000..72aad6c --- /dev/null +++ b/TC/build.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +. ./_export_env.sh # setting environment variables + +export TET_SUITE_ROOT=`pwd` +FILE_NAME_EXTENSION=`date +%s` + +RESULT_DIR=results +HTML_RESULT=$RESULT_DIR/build-tar-result-$FILE_NAME_EXTENSION.html +JOURNAL_RESULT=$RESULT_DIR/build-tar-result-$FILE_NAME_EXTENSION.journal + +mkdir -p $RESULT_DIR + +tcc -c -p ./ +tcc -b -j $JOURNAL_RESULT -p ./ +grw -c 7 -f chtml -o $HTML_RESULT $JOURNAL_RESULT diff --git a/TC/clean.sh b/TC/clean.sh new file mode 100755 index 0000000..29743e0 --- /dev/null +++ b/TC/clean.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +. ./_export_env.sh # setting environment variables + +export TET_SUITE_ROOT=`pwd` +RESULT_DIR=results + +tcc -c -p ./ # executing tcc, with clean option (-c) +rm -r $RESULT_DIR +rm -r tet_tmp_dir +rm testcase/tet_captured diff --git a/TC/config b/TC/config new file mode 100644 index 0000000..8b68019 --- /dev/null +++ b/TC/config @@ -0,0 +1,2 @@ +TET_INSTALL_HOST_PATH=/home/idkiller/work/tetware/TETware +TET_INSTALL_TARGET_PATH=/mnt/nfs/tetware/TETware diff --git a/TC/execute.sh b/TC/execute.sh new file mode 100755 index 0000000..a4f6095 --- /dev/null +++ b/TC/execute.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +. ./_export_target_env.sh # setting environment variables + +export TET_SUITE_ROOT=`pwd` +FILE_NAME_EXTENSION=`date +%s` + +RESULT_DIR=results +HTML_RESULT=$RESULT_DIR/exec-tar-result-$FILE_NAME_EXTENSION.html +JOURNAL_RESULT=$RESULT_DIR/exec-tar-result-$FILE_NAME_EXTENSION.journal + +mkdir -p $RESULT_DIR + +tcc -e -j $JOURNAL_RESULT -p ./ +grw -c 3 -f chtml -o $HTML_RESULT $JOURNAL_RESULT diff --git a/TC/testcase/Makefile b/TC/testcase/Makefile new file mode 100755 index 0000000..04df82b --- /dev/null +++ b/TC/testcase/Makefile @@ -0,0 +1,28 @@ +CC = gcc + +C_FILES = $(shell ls *.c) + +PKGS = dlog capi-system-haptic + +#TET_ROOT = /home/idkiller/work/tetware/TETware/tetware-target + +LDFLAGS += $(TET_ROOT)/lib/tet3/tcm_s.o +LDFLAGS += -L$(TET_ROOT)/lib/tet3 -ltcm_s +LDFLAGS += -L$(TET_ROOT)/lib/tet3 -lapi_s +LDFLAGS += `pkg-config --libs $(PKGS)` + +CFLAGS += `pkg-config --cflags $(PKGS)` +CFLAGS += -I. +CFLAGS += -I$(TET_ROOT)/inc/tet3 +CFLAGS += -Wall + +#TARGETS = $(C_FILES:%.c=tc-%) +TCS := $(shell ls -1 *.c | cut -d. -f1) + +all: $(TCS) + +%: %.c + $(CC) -o $@ $< $(CFLAGS) $(LDFLAGS) + +clean: + rm -f $(TCS) diff --git a/TC/testcase/tslist b/TC/testcase/tslist new file mode 100644 index 0000000..29af7f6 --- /dev/null +++ b/TC/testcase/tslist @@ -0,0 +1,2 @@ +/testcase/utc_system_haptic_basic +/testcase/utc_system_haptic_play diff --git a/TC/testcase/utc_system_haptic_basic.c b/TC/testcase/utc_system_haptic_basic.c new file mode 100644 index 0000000..a792cd9 --- /dev/null +++ b/TC/testcase/utc_system_haptic_basic.c @@ -0,0 +1,114 @@ +/* + * + * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of SAMSUNG + * ELECTRONICS ("Confidential Information"). You agree and acknowledge that + * this software is owned by Samsung and you shall not disclose such + * Confidential Information and shall use it only in accordance with the terms + * of the license agreement you entered into with SAMSUNG ELECTRONICS. SAMSUNG + * make no representations or warranties about the suitability of the software, + * either express or implied, including but not limited to the implied + * warranties of merchantability, fitness for a particular purpose, or + * non-infringement. SAMSUNG shall not be liable for any damages suffered by + * licensee arising out of or related to this software. + * + */ +#include <stdio.h> +#include <tet_api.h> +#include <haptic.h> + +#define API_NAME_HAPTIC_GET_DEVICE_COUNT "haptic_get_count" +#define API_NAME_HAPTIC_INITALIZE "haptic_initialize" +#define API_NAME_HAPTIC_DEINITALIZE "haptic_deinitialize" + +static void startup(void); +static void cleanup(void); + +void (*tet_startup)(void) = startup; +void (*tet_cleanup)(void) = cleanup; + + +static void utc_haptic_get_count_p(void); +static void utc_haptic_initialize_p(void); +static void utc_haptic_deinitialize_p(void); +static void utc_haptic_deinitialize_n(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + { utc_haptic_get_count_p, POSITIVE_TC_IDX}, + { utc_haptic_initialize_p, POSITIVE_TC_IDX}, + { utc_haptic_deinitialize_p, POSITIVE_TC_IDX}, + { utc_haptic_deinitialize_n, NEGATIVE_TC_IDX}, + { NULL, 0}, +}; + +static void startup(void) +{ + +} + +static void cleanup(void) +{ + /* end of TC */ +} + +static void utc_haptic_get_count_p(void) +{ + int cnt, err; + err = haptic_get_count(&cnt); + + if(err < 0 ){ + dts_fail(API_NAME_HAPTIC_GET_DEVICE_COUNT); + } + else{ + dts_pass(API_NAME_HAPTIC_GET_DEVICE_COUNT); + } +} + +static void utc_haptic_initialize_p(void) +{ + int err = haptic_initialize(); + haptic_deinitialize(); + + if(err < 0){ + dts_fail(API_NAME_HAPTIC_INITALIZE); + } + else{ + dts_pass(API_NAME_HAPTIC_INITALIZE); + } +} + +static void utc_haptic_deinitialize_p(void) +{ + int err; + + haptic_initialize(); + err = haptic_deinitialize(); + + if(err < 0){ + dts_fail(API_NAME_HAPTIC_DEINITALIZE); + } + else{ + dts_pass(API_NAME_HAPTIC_DEINITALIZE); + } +} + +static void utc_haptic_deinitialize_n(void) +{ + int err; + + err = haptic_deinitialize(); + + if(err < 0){ + dts_pass(API_NAME_HAPTIC_DEINITALIZE); + } + else{ + dts_fail(API_NAME_HAPTIC_DEINITALIZE); + } +} diff --git a/TC/testcase/utc_system_haptic_play.c b/TC/testcase/utc_system_haptic_play.c new file mode 100644 index 0000000..247acd1 --- /dev/null +++ b/TC/testcase/utc_system_haptic_play.c @@ -0,0 +1,214 @@ +/* + * + * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of SAMSUNG + * ELECTRONICS ("Confidential Information"). You agree and acknowledge that + * this software is owned by Samsung and you shall not disclose such + * Confidential Information and shall use it only in accordance with the terms + * of the license agreement you entered into with SAMSUNG ELECTRONICS. SAMSUNG + * make no representations or warranties about the suitability of the software, + * either express or implied, including but not limited to the implied + * warranties of merchantability, fitness for a particular purpose, or + * non-infringement. SAMSUNG shall not be liable for any damages suffered by + * licensee arising out of or related to this software. + * + */ +#include <stdio.h> +#include <tet_api.h> +#include <haptic.h> + +#define API_NAME_HAPTIC_PLAY_FILE "haptic_vibrate_file" +#define API_NAME_PLAY_MONOTONE "haptic_vibrate_monotone" +#define API_NAME_STOP_PLAY "haptic_stop_device" +#define API_NAME_PLAY_PTN "haptic_play_pattern" +#define API_NAME_STOP_PTN "haptic_stop_pattern" +#define TEST_IVT "/usr/share/immersion/01_Touch/touch_20ms_sharp.ivt" + +static void startup(void); +static void cleanup(void); + +void (*tet_startup)(void) = startup; +void (*tet_cleanup)(void) = cleanup; + +static void utc_system_haptic_vibrate_monotone_p(void); +static void utc_system_haptic_vibrate_monotone_n_1(void); +static void utc_system_haptic_vibrate_monotone_n_2(void); +static void utc_system_haptic_stop_device_p(void); +static void utc_system_haptic_stop_device_n(void); + +static void utc_system_haptic_vibrate_p(void); +static void utc_system_haptic_vibrate_n(void); + +static void utc_system_haptic_stop_pattern_p(void); +static void utc_system_haptic_stop_pattern_n(void); + +enum { + POSITIVE_TC_IDX = 0x01, + NEGATIVE_TC_IDX, +}; + +struct tet_testlist tet_testlist[] = { + { utc_system_haptic_vibrate_monotone_p, POSITIVE_TC_IDX }, + { utc_system_haptic_vibrate_monotone_n_1, NEGATIVE_TC_IDX }, + { utc_system_haptic_vibrate_monotone_n_2, NEGATIVE_TC_IDX }, + { utc_system_haptic_stop_device_p, POSITIVE_TC_IDX }, + { utc_system_haptic_stop_device_n, NEGATIVE_TC_IDX }, + { utc_system_haptic_vibrate_p, POSITIVE_TC_IDX}, + { utc_system_haptic_vibrate_n, NEGATIVE_TC_IDX}, + { utc_system_haptic_stop_pattern_p, POSITIVE_TC_IDX}, + { utc_system_haptic_stop_pattern_n, NEGATIVE_TC_IDX}, + { NULL, 0}, +}; + + +static void startup(void) +{ + int error = HAPTIC_ERROR_NONE; + + error = haptic_initialize(); + + dts_check_eq("haptic_initialize", error, HAPTIC_ERROR_NONE, "fail initialize in startup"); +} + +static void cleanup(void) +{ + int error = HAPTIC_ERROR_NONE; + + error = haptic_deinitialize(); + + dts_check_eq("haptic_deinitialize", error, HAPTIC_ERROR_NONE, "fail deinitialize in startup"); +} + + +/** + * @brief Positive test case of haptic_vibrate_monotone() + */ +static void utc_system_haptic_vibrate_monotone_p(void) +{ + int error = HAPTIC_ERROR_NONE; + + error = haptic_vibrate_monotone(0, 1000); + if(error != HAPTIC_ERROR_NONE) + dts_fail(API_NAME_PLAY_MONOTONE); + + dts_pass(API_NAME_PLAY_MONOTONE); +} + +/** + * @brief Negative test case of haptic_vibrate_monotone() + */ +static void utc_system_haptic_vibrate_monotone_n_1(void) +{ + int error = HAPTIC_ERROR_NONE; + + error = haptic_vibrate_monotone(-1, 1000); + if(error == HAPTIC_ERROR_NONE) + dts_fail(API_NAME_PLAY_MONOTONE); + + dts_pass(API_NAME_PLAY_MONOTONE); +} + +/** + * @brief Negative test case of haptic_vibrate_monotone() + */ +static void utc_system_haptic_vibrate_monotone_n_2(void) +{ + int error = HAPTIC_ERROR_NONE; + + error = haptic_vibrate_monotone(0, -1); + if(error == HAPTIC_ERROR_NONE) + dts_fail(API_NAME_PLAY_MONOTONE); + + dts_pass(API_NAME_PLAY_MONOTONE); +} + + +/** + * @brief Positive test case of haptic_stop_device() + */ +static void utc_system_haptic_stop_device_p(void) +{ + int error = HAPTIC_ERROR_NONE; + + error = haptic_vibrate_monotone(0, 1000); + if(error != HAPTIC_ERROR_NONE) + dts_fail(API_NAME_STOP_PLAY); + + error = haptic_stop_device(0); + if(error != HAPTIC_ERROR_NONE) + dts_fail(API_NAME_STOP_PLAY); + + dts_pass(API_NAME_STOP_PLAY); +} + +/** + * @brief Negative test case of haptic_stop_device() + */ +static void utc_system_haptic_stop_device_n(void) +{ + int error = HAPTIC_ERROR_NONE; + + error = haptic_stop_device(-1); + if(error == HAPTIC_ERROR_NONE) + dts_fail(API_NAME_STOP_PLAY); + + dts_pass(API_NAME_STOP_PLAY); +} + +static void utc_system_haptic_vibrate_p(void) +{ + haptic_vibration_iter_s ptn[] = { + {0, HAPTIC_LEVEL_5, 500}, + {0, HAPTIC_LEVEL_1, 500}, + }; + + int ptn_id; + if(haptic_play_pattern(ptn, 2, 1, 0, &ptn_id) < 0){ + dts_fail(API_NAME_PLAY_PTN); + }else{ + dts_pass(API_NAME_PLAY_PTN); + } +} + +static void utc_system_haptic_vibrate_n(void) +{ + int ptn_id; + if(haptic_play_pattern(NULL, 7, 1, 0, &ptn_id) < 0){ + dts_pass(API_NAME_PLAY_PTN); + }else{ + dts_fail(API_NAME_PLAY_PTN); + } +} + +static void utc_system_haptic_stop_pattern_p(void) +{ + haptic_vibration_iter_s ptn[] = { + {0, HAPTIC_LEVEL_5, 500}, + {0, HAPTIC_LEVEL_1, 500}, + }; + + int ptn_id; + haptic_play_pattern(ptn, 2, 1, 0, &ptn_id); + + int err = haptic_stop_pattern(ptn_id); + if(err < 0){ + dts_fail(API_NAME_STOP_PTN); + } + else{ + dts_pass(API_NAME_STOP_PTN); + } +} + +static void utc_system_haptic_stop_pattern_n(void) +{ + int err = haptic_stop_pattern(-1); + if(err < 0){ + dts_pass(API_NAME_STOP_PTN); + } + else{ + dts_fail(API_NAME_STOP_PTN); + } + +} diff --git a/TC/tet_scen b/TC/tet_scen new file mode 100755 index 0000000..03f029a --- /dev/null +++ b/TC/tet_scen @@ -0,0 +1,7 @@ +all + ^TEST +##### Scenarios for TEST ##### + +# Test scenario +TEST + :include:/testcase/tslist diff --git a/TC/tetbuild.cfg b/TC/tetbuild.cfg new file mode 100644 index 0000000..f7eda55 --- /dev/null +++ b/TC/tetbuild.cfg @@ -0,0 +1,5 @@ +TET_OUTPUT_CAPTURE=True # capture option for build operation checking +TET_BUILD_TOOL=make # build with using make command +TET_BUILD_FILE=-f Makefile # execution file (Makefile) for build +TET_API_COMPLIANT=True # use TET API in Test Case ? +TET_PASS_TC_NAME=True # report passed TC name in Journal file? diff --git a/TC/tetclean.cfg b/TC/tetclean.cfg new file mode 100644 index 0000000..02d7030 --- /dev/null +++ b/TC/tetclean.cfg @@ -0,0 +1,5 @@ +TET_OUTPUT_CAPTURE=True # capture option +TET_CLEAN_TOOL= make clean # clean tool +TET_CLEAN_FILE= Makefile # file for clean +TET_API_COMPLIANT=True # TET API useage +TET_PASS_TC_NAME=True # showing name , passed TC diff --git a/TC/tetexec.cfg b/TC/tetexec.cfg new file mode 100644 index 0000000..ef3e452 --- /dev/null +++ b/TC/tetexec.cfg @@ -0,0 +1,5 @@ +TET_OUTPUT_CAPTURE=True # capturing execution or not +TET_EXEC_TOOL= # ex) exec : execution tool set up/ Optional +TET_EXEC_FILE= # ex) exectool : execution file/ Optional +TET_API_COMPLIANT=True # Test case or Tool usesTET API? +TET_PASS_TC_NAME=True # showing Passed TC name ? |