os/ossrv/genericopenlibs/liboil/tsrc/testsuite/swab/src/swab.c
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     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