test-types.cc

Go to the documentation of this file.
00001 #include "config.h"
00002 
00003 #include <cassert>
00004 
00005 #include "asserts.h"
00006 #include "types.h"
00007 
00008 void test_u8(void)
00009 {
00010         uint8 u8 = 0;
00011         uint8 u8_old = 0;
00012         unsigned int c = 0;
00013 
00014         u8 = 1;
00015         for (c = 0; u8 != u8_old; c++) {
00016                 u8_old = u8;
00017                 u8 <<= 1;
00018                 u8 |= 1;
00019         }
00020 
00021         assert(c == 8);
00022 }
00023 
00024 void test_u16(void)
00025 {
00026         uint16 u16 = 0;
00027         uint16 u16_old = 0;
00028         unsigned int c = 0;
00029 
00030         u16 = 1;
00031         for (c = 0; u16 != u16_old; c++) {
00032                 u16_old = u16;
00033                 u16 <<= 1;
00034                 u16 |= 1;
00035         }
00036 
00037         assert(c == 16);
00038 }
00039 
00040 void test_u32(void)
00041 {
00042         uint32 u32 = 0;
00043         uint32 u32_old = 0;
00044         unsigned int c = 0;
00045 
00046         u32 = 1;
00047         for (c = 0; u32 != u32_old; c++) {
00048                 u32_old = u32;
00049                 u32 <<= 1;
00050                 u32 |= 1;
00051         }
00052 
00053         assert(c == 32);
00054 }
00055 
00056 void test_u64(void)
00057 {
00058         uint64 u64 = 0;
00059         uint64 u64_old = 0;
00060         unsigned int c = 0;
00061         
00062         u64 = 1;
00063         for (c = 0; u64 != u64_old; c++) {
00064                 u64_old = u64;
00065                 u64 <<= 1;
00066                 u64 |= 1;
00067         }
00068 
00069         assert(c == 64);
00070 }
00071 
00072 int main(int argc, char* argv[])
00073 {
00074         test_u8();
00075         test_u16();
00076         test_u32();
00077         test_u64();
00078         return(0);
00079 }

Generated on Mon Jul 12 12:02:55 2004 for rvm by doxygen 1.3.6