Update contrib.
2 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
19 #include <liboil/liboil.h>
20 #include <liboil/liboilfunction.h>
24 #include <liboil/globals.h>
26 #define LOG_FILE "c:\\logs\\testsuite_convert_log.txt"
27 #include "std_log_result.h"
28 #define LOG_FILENAME_LINE __FILE__, __LINE__
32 void create_xml(int result)
37 testResultXml("testsuite_convert");
41 #define SIGN_BIT_8 0x80
42 #define SIGN_BIT_16 0x8000
43 #define SIGN_BIT_32 0x80000000
45 #define MAX_SIGNED_INT_32 0x7FFFFFFF
46 #define MAX_SIGNED_INT_16 0x7FFF
47 #define MAX_SIGNED_INT_16 0x7FFF
48 #define MAX_SIGNED_INT_8 0x7F
50 #define MAX_UNSIGNED_INT16 0xFFFF
51 #define MAX_UNSIGNED_INT8 0xFF
53 float f32src[] = {0.0, 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7, 8.8, 9.9, 10.0, 11.1, 12.2, 13.3, 14.4, 15.5, 16.6, 17.7, 18.8, 19.9};
54 double f64src[] = {0.0, 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7, 8.8, 9.9, 10.0, 11.1, 12.2, 13.3, 14.4, 15.5, 16.6, 17.7, 18.8, 19.9};
56 void test_oil_convert_s16_f32()
61 oil_convert_s16_f32(output, f32src, SIZE);
63 for(i = 0; i<SIZE; i++)
67 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
73 void test_oil_convert_s16_f64()
78 oil_convert_s16_f64(output, f64src, SIZE);
80 for(i = 0; i<SIZE; i++)
84 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
90 void test_oil_convert_s16_s32()
99 oil_convert_s16_s32(output, input, SIZE);
101 for(i = 0; i<SIZE; i++)
105 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
111 void test_oil_convert_s16_s8()
114 int16_t output[SIZE];
117 for(i=0; i<SIZE; i++)
120 oil_convert_s16_s8(output, input, SIZE);
122 for(i = 0; i<SIZE; i++)
126 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
132 void test_oil_convert_s16_u16()
134 uint16_t input[SIZE];
135 int16_t output[SIZE];
138 for(i=0; i<SIZE; i++)
143 input[i] = i | SIGN_BIT_16;
146 oil_convert_s16_u16(output, input, SIZE);
148 for(i = 0; i<SIZE; i++)
154 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
160 if(output[i] != MAX_SIGNED_INT_16)
162 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_SIGNED_INT_16,output[i]);
169 void test_oil_convert_s16_u32()
171 uint32_t input[SIZE];
172 int16_t output[SIZE];
175 for(i=0; i<SIZE; i++)
180 input[i] = i | SIGN_BIT_32;
183 oil_convert_s16_u32(output, input, SIZE);
185 for(i = 0; i<SIZE; i++)
191 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
197 if(output[i] != MAX_SIGNED_INT_16)
199 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_SIGNED_INT_16,output[i]);
206 void test_oil_convert_s16_u8()
209 int16_t output[SIZE];
212 for(i=0; i<SIZE; i++)
217 input[i] = i | SIGN_BIT_8;
220 oil_convert_s16_u8(output, input, SIZE);
222 for(i = 0; i<SIZE; i++)
224 if(output[i] != input[i])
226 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
232 void test_oil_convert_s32_f64()
235 int32_t output[SIZE];
238 for(i=0; i<SIZE; i++)
241 oil_convert_s32_f64(output, input, SIZE);
243 for(i = 0; i<SIZE; i++)
247 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
253 void test_oil_convert_s32_s16()
256 int32_t output[SIZE];
259 for(i=0; i<SIZE; i++)
262 oil_convert_s32_s16(output, input, SIZE);
264 for(i = 0; i<SIZE; i++)
268 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
274 void test_oil_convert_s32_s8()
277 int32_t output[SIZE];
280 for(i=0; i<SIZE; i++)
283 oil_convert_s32_s8(output, input, SIZE);
285 for(i = 0; i<SIZE; i++)
289 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
295 void test_oil_convert_s32_u16()
297 uint16_t input[SIZE];
298 int32_t output[SIZE];
301 for(i=0; i<SIZE; i++)
306 input[i] = i | SIGN_BIT_16;
309 oil_convert_s32_u16(output, input, SIZE);
311 for(i = 0; i<SIZE; i++)
317 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
323 if(output[i] != input[i])
325 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
332 void test_oil_convert_s32_u32()
334 uint32_t input[SIZE];
335 int32_t output[SIZE];
338 for(i=0; i<SIZE; i++)
343 input[i] = i | SIGN_BIT_32;
346 oil_convert_s32_u32(output, input, SIZE);
348 for(i = 0; i<SIZE; i++)
354 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
360 if(output[i] != MAX_SIGNED_INT_32)
362 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_SIGNED_INT_32,output[i]);
369 void test_oil_convert_s32_u8()
372 int32_t output[SIZE];
375 for(i=0; i<SIZE; i++)
380 input[i] = i | SIGN_BIT_8;
383 oil_convert_s32_u8(output, input, SIZE);
385 for(i = 0; i<SIZE; i++)
387 if(output[i] != input[i])
389 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
395 void test_oil_convert_s8_f32()
400 oil_convert_s8_f32(output, f32src, SIZE);
402 for(i = 0; i<SIZE; i++)
406 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
412 void test_oil_convert_s8_f64()
417 oil_convert_s8_f64(output, f64src, SIZE);
419 for(i = 0; i<SIZE; i++)
423 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
429 void test_oil_convert_s8_s16()
435 for(i=0; i<SIZE; i++)
440 input[i] = i | 0x100;
443 oil_convert_s8_s16(output, input, SIZE);
445 for(i = 0; i<SIZE; i++)
451 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
457 if(output[i] != MAX_SIGNED_INT_8)
459 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_SIGNED_INT_8,output[i]);
466 void test_oil_convert_s8_s32()
472 for(i=0; i<SIZE; i++)
477 input[i] = i | 0x10000;
480 oil_convert_s8_s32(output, input, SIZE);
482 for(i = 0; i<SIZE; i++)
488 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
494 if(output[i] != MAX_SIGNED_INT_8)
496 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_SIGNED_INT_8,output[i]);
503 void test_oil_convert_s8_u16()
505 uint16_t input[SIZE];
509 for(i=0; i<SIZE; i++)
514 input[i] = i | SIGN_BIT_16;
517 oil_convert_s8_u16(output, input, SIZE);
519 for(i = 0; i<SIZE; i++)
525 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
531 if(output[i] != MAX_SIGNED_INT_8)
533 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_SIGNED_INT_8,output[i]);
540 void test_oil_convert_s8_u32()
542 uint32_t input[SIZE];
546 for(i=0; i<SIZE; i++)
551 input[i] = i | SIGN_BIT_32;
554 oil_convert_s8_u32(output, input, SIZE);
556 for(i = 0; i<SIZE; i++)
562 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
568 if(output[i] != MAX_SIGNED_INT_8)
570 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_SIGNED_INT_8,output[i]);
577 void test_oil_convert_s8_u8()
583 for(i=0; i<SIZE; i++)
588 input[i] = i | SIGN_BIT_8;
591 oil_convert_s8_u8(output, input, SIZE);
593 for(i = 0; i<SIZE; i++)
599 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
605 if(output[i] != MAX_SIGNED_INT_8)
607 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_SIGNED_INT_8,output[i]);
614 void test_oil_convert_u16_f32()
616 uint16_t output[SIZE];
619 oil_convert_u16_f32(output, f32src, SIZE);
621 for(i = 0; i<SIZE; i++)
625 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
631 void test_oil_convert_u16_f64()
633 uint16_t output[SIZE];
636 oil_convert_u16_f64(output, f64src, SIZE);
638 for(i = 0; i<SIZE; i++)
642 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
648 void test_oil_convert_u16_s16()
651 uint16_t output[SIZE];
654 for(i=0; i<SIZE; i++)
659 input[i] = i | 0x100;
662 oil_convert_u16_s16(output, input, SIZE);
664 for(i = 0; i<SIZE; i++)
666 if(output[i] != input[i])
668 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
674 void test_oil_convert_u16_s32()
677 uint16_t output[SIZE];
680 for(i=0; i<SIZE; i++)
685 input[i] = i | 0x10000;
688 oil_convert_u16_s32(output, input, SIZE);
690 for(i = 0; i<SIZE; i++)
696 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
702 if(output[i] != MAX_UNSIGNED_INT16)
704 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_UNSIGNED_INT16,output[i]);
711 void test_oil_convert_u16_u32()
713 uint32_t input[SIZE];
714 uint16_t output[SIZE];
717 for(i=0; i<SIZE; i++)
722 input[i] = i | SIGN_BIT_32;
725 oil_convert_u16_u32(output, input, SIZE);
727 for(i = 0; i<SIZE; i++)
733 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
739 if(output[i] != MAX_UNSIGNED_INT16)
741 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_UNSIGNED_INT16,output[i]);
748 void test_oil_convert_u16_u8()
751 uint16_t output[SIZE];
754 for(i=0; i<SIZE; i++)
759 input[i] = i | SIGN_BIT_8;
762 oil_convert_u16_u8(output, input, SIZE);
764 for(i = 0; i<SIZE; i++)
766 if(output[i] != input[i])
768 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
774 void test_oil_convert_u32_f64()
776 uint32_t output[SIZE];
779 oil_convert_u32_f64(output, f64src, SIZE);
781 for(i = 0; i<SIZE; i++)
785 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
791 void test_oil_convert_u32_s32()
794 uint32_t output[SIZE];
797 for(i=0; i<SIZE; i++)
802 input[i] = i | 0x10000;
805 oil_convert_u32_s32(output, input, SIZE);
807 for(i = 0; i<SIZE; i++)
809 if(output[i] != input[i])
811 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
817 void test_oil_convert_u32_u16()
819 uint16_t input[SIZE];
820 uint32_t output[SIZE];
823 for(i=0; i<SIZE; i++)
828 input[i] = i | SIGN_BIT_16;
831 oil_convert_u32_u16(output, input, SIZE);
833 for(i = 0; i<SIZE; i++)
835 if(output[i] != input[i])
837 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
843 void test_oil_convert_u32_u8()
846 uint32_t output[SIZE];
849 for(i=0; i<SIZE; i++)
854 input[i] = i | SIGN_BIT_8;
857 oil_convert_u32_u8(output, input, SIZE);
859 for(i = 0; i<SIZE; i++)
861 if(output[i] != input[i])
863 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
869 void test_oil_convert_u8_f32()
871 uint8_t output[SIZE];
874 oil_convert_u8_f32(output, f32src, SIZE);
876 for(i = 0; i<SIZE; i++)
880 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
886 void test_oil_convert_u8_f64()
888 uint8_t output[SIZE];
891 oil_convert_u8_f64(output, f64src, SIZE);
893 for(i = 0; i<SIZE; i++)
897 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
903 void test_oil_convert_u8_s16()
906 uint8_t output[SIZE];
909 for(i=0; i<SIZE; i++)
914 input[i] = i | 0x100;
917 oil_convert_u8_s16(output, input, SIZE);
919 for(i = 0; i<SIZE; i++)
923 if(output[i] != input[i])
925 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
931 if(output[i] != MAX_UNSIGNED_INT8)
933 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_UNSIGNED_INT8,output[i]);
940 void test_oil_convert_u8_s32()
943 uint8_t output[SIZE];
946 for(i=0; i<SIZE; i++)
951 input[i] = i | 0x10000;
954 oil_convert_u8_s32(output, input, SIZE);
956 for(i = 0; i<SIZE; i++)
960 if(output[i] != input[i])
962 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
968 if(output[i] != MAX_UNSIGNED_INT8)
970 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_UNSIGNED_INT8,output[i]);
977 void test_oil_convert_u8_s8()
980 uint8_t output[SIZE];
983 for(i=0; i<SIZE; i++)
986 oil_convert_u8_s8(output, input, SIZE);
988 for(i = 0; i<SIZE; i++)
992 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,i,output[i]);
998 void test_oil_convert_u8_u16()
1000 uint16_t input[SIZE];
1001 uint8_t output[SIZE];
1004 for(i=0; i<SIZE; i++)
1009 input[i] = i | SIGN_BIT_16;
1012 oil_convert_u8_u16(output, input, SIZE);
1014 for(i = 0; i<SIZE; i++)
1018 if(output[i] != input[i])
1020 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
1024 else if(output[i] != MAX_UNSIGNED_INT8)
1026 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_UNSIGNED_INT8,output[i]);
1032 void test_oil_convert_u8_u32()
1034 uint32_t input[SIZE];
1035 uint8_t output[SIZE];
1038 for(i=0; i<SIZE; i++)
1043 input[i] = i | SIGN_BIT_32;
1046 oil_convert_u8_u32(output, input, SIZE);
1048 for(i = 0; i<SIZE; i++)
1052 if(output[i] != input[i])
1054 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,input[i],output[i]);
1058 else if(output[i] != MAX_UNSIGNED_INT8)
1060 std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,MAX_UNSIGNED_INT8,output[i]);
1066 int main (int argc, char *argv[])
1070 std_log(LOG_FILENAME_LINE,"START oil_convert_s16_* TESTS");
1071 test_oil_convert_s16_f32();
1072 test_oil_convert_s16_f64();
1073 test_oil_convert_s16_s32();
1074 test_oil_convert_s16_s8();
1075 test_oil_convert_s16_u16();
1076 test_oil_convert_s16_u32();
1077 test_oil_convert_s16_u8();
1078 std_log(LOG_FILENAME_LINE,"END oil_convert_s16_* TESTS");
1080 std_log(LOG_FILENAME_LINE,"START oil_convert_s32_* TESTS");
1081 test_oil_convert_s32_f64();
1082 test_oil_convert_s32_s16();
1083 test_oil_convert_s32_s8();
1084 test_oil_convert_s32_u16();
1085 test_oil_convert_s32_u32();
1086 test_oil_convert_s32_u8();
1087 std_log(LOG_FILENAME_LINE,"END oil_convert_s32_* TESTS");
1089 std_log(LOG_FILENAME_LINE,"START oil_convert_s8_* TESTS");
1090 test_oil_convert_s8_f32();
1091 test_oil_convert_s8_f64();
1092 test_oil_convert_s8_s16();
1093 test_oil_convert_s8_s32();
1094 test_oil_convert_s8_u16();
1095 test_oil_convert_s8_u32();
1096 test_oil_convert_s8_u8();
1097 std_log(LOG_FILENAME_LINE,"END oil_convert_s8_* TESTS");
1099 std_log(LOG_FILENAME_LINE,"START oil_convert_u16_* TESTS");
1100 test_oil_convert_u16_f32();
1101 test_oil_convert_u16_f64();
1102 test_oil_convert_u16_s16();
1103 test_oil_convert_u16_s32();
1104 test_oil_convert_u16_u32();
1105 test_oil_convert_u16_u8();
1106 std_log(LOG_FILENAME_LINE,"END oil_convert_u16_* TESTS");
1108 std_log(LOG_FILENAME_LINE,"START oil_convert_u32_* TESTS");
1109 test_oil_convert_u32_f64();
1110 test_oil_convert_u32_s32();
1111 test_oil_convert_u32_u16();
1112 test_oil_convert_u32_u8();
1113 std_log(LOG_FILENAME_LINE,"END oil_convert_u32_* TESTS");
1115 std_log(LOG_FILENAME_LINE,"START oil_convert_u8_* TESTS");
1116 test_oil_convert_u8_f32();
1117 test_oil_convert_u8_f64();
1118 test_oil_convert_u8_s16();
1119 test_oil_convert_u8_s32();
1120 test_oil_convert_u8_s8();
1121 test_oil_convert_u8_u16();
1122 test_oil_convert_u8_u32();
1123 std_log(LOG_FILENAME_LINE,"END oil_convert_u8_* TESTS");
1126 std_log(LOG_FILENAME_LINE,"Test Failed");
1128 std_log(LOG_FILENAME_LINE,"Test Successful");