genericopenlibs/liboil/tsrc/testsuite/swab/src/swab.c
changeset 59 09fa7c3c5079
equal deleted inserted replaced
52:bf6a71c50e42 59:09fa7c3c5079
       
     1 /*
       
     2 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     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".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: 
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #include <liboil/liboil.h>
       
    20 #include <liboil/liboilfunction.h>
       
    21 #include <stdio.h>
       
    22 #include <stdlib.h>
       
    23 
       
    24 #include <liboil/globals.h>
       
    25 
       
    26 #define LOG_FILE "c:\\logs\\testsuite_swab_log.txt"
       
    27 #include "std_log_result.h"
       
    28 #define LOG_FILENAME_LINE __FILE__, __LINE__
       
    29 
       
    30 #define SIZE    20
       
    31 
       
    32 void create_xml(int result)
       
    33 {
       
    34     if(result)
       
    35         assert_failed = 1;
       
    36     
       
    37     testResultXml("testsuite_swab");
       
    38     close_log_file();
       
    39 }
       
    40 
       
    41 void test_oil_swab_u16()
       
    42     {
       
    43     //uint16_t * d_n, const uint16_t * s_n, int n
       
    44     uint16_t output[SIZE];
       
    45     uint16_t input[SIZE];
       
    46     uint16_t linux_output[] = {768,1024,1280,1536,1792,2048,2304,2560,2816,3072,3328,3584,3840,4096,4352,4608,4864,5120,5376,5632};
       
    47     int i = 0;
       
    48     
       
    49     for(i=0; i<SIZE; i++)
       
    50         {
       
    51         output[i] = 0;
       
    52         input[i] = i+3;
       
    53         }
       
    54     
       
    55     oil_swab_u16(output, input, SIZE);
       
    56     
       
    57     for(i=0; i<SIZE; i++)
       
    58         {
       
    59         if(output[i] != linux_output[i])
       
    60             {
       
    61             std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,linux_output[i],output[i]);
       
    62             assert_failed = 1;
       
    63             }
       
    64         }
       
    65     }
       
    66 
       
    67 void test_oil_swab_u32()
       
    68     {
       
    69     //uint32_t * d_n, const uint32_t * s_n, int n
       
    70     uint32_t output[SIZE];
       
    71     uint32_t input[SIZE];
       
    72     uint32_t linux_output[] = {50331648,67108864,83886080,100663296,117440512,134217728,150994944,167772160,184549376,201326592,218103808,234881024,251658240,268435456,285212672,301989888,318767104,335544320,352321536,369098752};
       
    73     int i = 0;
       
    74     
       
    75     for(i=0; i<SIZE; i++)
       
    76         {
       
    77         output[i] = 0;
       
    78         input[i] = i+3;
       
    79         }
       
    80     
       
    81     oil_swab_u32(output, input, SIZE);
       
    82     
       
    83     for(i=0; i<SIZE; i++)
       
    84         {
       
    85         if(output[i] != linux_output[i])
       
    86             {
       
    87             std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,linux_output[i],output[i]);
       
    88             assert_failed = 1;
       
    89             }
       
    90         }
       
    91     }
       
    92 
       
    93 int main (int argc, char *argv[])
       
    94 {
       
    95   oil_init ();
       
    96 
       
    97   test_oil_swab_u16();
       
    98   test_oil_swab_u32();
       
    99   
       
   100   if(assert_failed)
       
   101       std_log(LOG_FILENAME_LINE,"Test Failed");
       
   102   else
       
   103       std_log(LOG_FILENAME_LINE,"Test Successful");
       
   104 
       
   105   create_xml(0);
       
   106   return 0;
       
   107 }
       
   108