Fix and improve testsuite
[ocl-icd] / tests / testsuite-standard.at
1 AT_BANNER([Standard compliant ocl-icd libOpenCL.so])
2
3 AT_SETUP([invalid OCL_ICD_VENDORS])
4 AT_EXPORT([OCL_ICD_DEBUG],[15],
5           [OCL_ICD_VENDORS],[unexisting-vendors-dir])
6 AT_CHECK([ocl_test], 0, [No platforms found!
7 ], [stderr])
8 AT_CLEANUP
9
10 AT_SETUP([OCL_ICD_VENDORS as directory])
11 AT_UNSET([OCL_ICD_ASSUME_ICD_EXTENSION])
12 AT_EXPORT([OCL_ICD_DEBUG],[7],
13           [OCL_ICD_VENDORS],[$abs_top_builddir/vendors])
14 dnl platforms can be listed in any order
15 AT_CHECK([ocl_test | env LC_ALL=C sort], 0, [Found 2 platforms!
16 ocl-icd ICD test
17 ocl-icd ICD test2
18 ], [stderr])
19 AT_CLEANUP
20
21 AT_SETUP([OCL_ICD_VENDORS as library file])
22 AT_EXPORT([OCL_ICD_DEBUG],[7],
23           [OCL_ICD_VENDORS],[$abs_top_builddir/.libs/libdummycl.so])
24 AT_CHECK([ocl_test], 0, [Found 1 platforms!
25 ocl-icd ICD test
26 ], [stderr])
27 AT_CLEANUP
28
29 AT_SETUP([OCL_ICD_VENDORS as ICD file (.icd)])
30 AT_EXPORT([OCL_ICD_DEBUG],[7],
31           [OCL_ICD_VENDORS],[$abs_top_builddir/vendors/dummycl.icd])
32 AT_CHECK([ocl_test], 0, [Found 1 platforms!
33 ocl-icd ICD test
34 ], [stderr])
35 AT_CLEANUP
36
37 AT_SETUP([Our dummy ICD through our ICD loader])
38 AT_EXPORT([OCL_ICD_DEBUG],[7],
39           [OCL_ICD_VENDORS],[$abs_top_builddir/vendors])
40 AT_CHECK([run_dummy_icd_through_our_ICDL], 0, [stdout], [stderr])
41 AT_CHECK([grep "^-1" stdout | sort], 0, [])
42 AT_CHECK([grep -v '^[[0-9]]* *:' stdout ], 0, [---
43 ])
44 AT_CHECK([sed -e "s/ *(expected)//" stdout | uniq -c | grep -v '^ *2 ' ], 0, [      1 ---
45 ])
46 AT_CLEANUP
47
48 AT_SETUP([ICD Loader extension])
49 AT_EXPORT([OCL_ICD_VENDORS],[$abs_top_builddir/vendors])
50 AT_CHECK([ocl_test_icdl], 0,
51 [ocl_version: OpenCL 1.2
52 version: AT_PACKAGE_VERSION
53 name: OpenCL ICD Loader
54 vendor: OCL Icd free software
55 ], [])
56 AT_CLEANUP
57