stdcpp/tsrc/Stdcpp_test/stlport/auto/stlport_replif/src/replif1.cpp
changeset 0 e4d67989cc36
child 18 47c74d1534e1
equal deleted inserted replaced
-1:000000000000 0:e4d67989cc36
       
     1  
       
     2 // STLport regression testsuite component.
       
     3 // To compile as a separate example, please #define MAIN.
       
     4 
       
     5 #include <algorithm>
       
     6 #include <vector>
       
     7 #include <iostream>
       
     8 
       
     9 #ifdef MAIN 
       
    10 #define replif1_test main
       
    11 #endif
       
    12 static bool odd(int a_)
       
    13 {
       
    14   return a_ % 2;
       
    15 }
       
    16 
       
    17 #if !defined (STLPORT) || defined(__STL_USE_NAMESPACES)
       
    18 using namespace std;
       
    19 #endif
       
    20 int replif1_test(int, char**)
       
    21 {
       
    22   int failures=0;
       
    23   cout<<"Results of replif1_test:"<<endl;
       
    24 
       
    25   vector <int> v1(10);
       
    26   int i;
       
    27   for(i = 0; i < v1.size(); i++)
       
    28   {
       
    29     v1[i] = i % 5;
       
    30     cout << v1[i] << ' ';
       
    31   }
       
    32   cout << endl;
       
    33   
       
    34   if(0!=v1[0])
       
    35      failures++;
       
    36   else if(1!=v1[1])
       
    37       failures++;
       
    38   else if(2!=v1[2])
       
    39      failures++;
       
    40  else if(3!=v1[3])
       
    41       failures++;
       
    42   else if(4!=v1[4])
       
    43      failures++;
       
    44  else if(0!=v1[5])
       
    45       failures++;
       
    46   else if(1!=v1[6])
       
    47      failures++;
       
    48  else if(2!=v1[7])
       
    49       failures++;
       
    50   else if(3!=v1[8])
       
    51      failures++;
       
    52  else if(4!=v1[9])
       
    53       failures++;
       
    54   
       
    55 
       
    56            
       
    57   
       
    58   replace_if(v1.begin(), v1.end(), odd, 42);
       
    59   for(i = 0; i < v1.size(); i++)
       
    60     cout << v1[i] << ' ';
       
    61   cout << endl;
       
    62   
       
    63    if(0!=v1[0])
       
    64      failures++;
       
    65   else if(42!=v1[1])
       
    66       failures++;
       
    67   else if(2!=v1[2])
       
    68      failures++;
       
    69  else if(42!=v1[3])
       
    70       failures++;
       
    71   else if(4!=v1[4])
       
    72      failures++;
       
    73  else if(0!=v1[5])
       
    74       failures++;
       
    75   else if(42!=v1[6])
       
    76      failures++;
       
    77  else if(2!=v1[7])
       
    78       failures++;
       
    79   else if(42!=v1[8])
       
    80      failures++;
       
    81  else if(4!=v1[9])
       
    82        failures++;
       
    83    
       
    84    if(failures)
       
    85      return 1;
       
    86    else
       
    87      return 0;
       
    88 }