/* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2 . 0 . If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/*
* * File : lazyinit . c
* * Description : Test the functions and macros declared in prbit . h
* *
*/
#include "nspr.h"
#define ErrorReport(x) \
{ \
printf((x)); \
failed =
1 ; \
}
prbitmap_t myMap[
512 /
32 ] = {
0 };
PRInt32 rc;
PRInt32 i;
PRIntn failed =
0 ;
int main(int argc, char** argv) {
/*
* * Test bitmap things .
*/
if (PR_TEST_BIT(myMap,
0 )) {
ErrorReport(
"Test 0.0: Failed\n" );
}
if (PR_TEST_BIT(myMap,
31 )) {
ErrorReport(
"Test 0.1: Failed\n" );
}
if (PR_TEST_BIT(myMap,
128 )) {
ErrorReport(
"Test 0.2: Failed\n" );
}
if (PR_TEST_BIT(myMap,
129 )) {
ErrorReport(
"Test 0.3: Failed\n" );
}
PR_SET_BIT(myMap,
0 );
if (!PR_TEST_BIT(myMap,
0 )) {
ErrorReport(
"Test 1.0: Failed\n" );
}
PR_CLEAR_BIT(myMap,
0 );
if (PR_TEST_BIT(myMap,
0 )) {
ErrorReport(
"Test 1.0.1: Failed\n" );
}
PR_SET_BIT(myMap,
31 );
if (!PR_TEST_BIT(myMap,
31 )) {
ErrorReport(
"Test 1.1: Failed\n" );
}
PR_CLEAR_BIT(myMap,
31 );
if (PR_TEST_BIT(myMap,
31 )) {
ErrorReport(
"Test 1.1.1: Failed\n" );
}
PR_SET_BIT(myMap,
128 );
if (!PR_TEST_BIT(myMap,
128 )) {
ErrorReport(
"Test 1.2: Failed\n" );
}
PR_CLEAR_BIT(myMap,
128 );
if (PR_TEST_BIT(myMap,
128 )) {
ErrorReport(
"Test 1.2.1: Failed\n" );
}
PR_SET_BIT(myMap,
129 );
if (!PR_TEST_BIT(myMap,
129 )) {
ErrorReport(
"Test 1.3: Failed\n" );
}
PR_CLEAR_BIT(myMap,
129 );
if (PR_TEST_BIT(myMap,
129 )) {
ErrorReport(
"Test 1.3.1: Failed\n" );
}
/*
* * Test Ceiling and Floor functions and macros
*/
if ((rc = PR_CeilingLog2(
32 )) !=
5 ) {
ErrorReport(
"Test 10.0: Failed\n" );
}
if ((rc = PR_FloorLog2(
32 )) !=
5 ) {
ErrorReport(
"Test 10.1: Failed\n" );
}
/*
* * Evaluate results and exit
*/
if (failed) {
printf(
"FAILED\n" );
return (
1 );
}
else {
printf(
"PASSED\n" );
return (
0 );
}
}
/* end main() */
/* end testbit.c */
Messung V0.5 in Prozent C=96 H=95 G=95
¤ Dauer der Verarbeitung: 0.2 Sekunden
¤
*© Formatika GbR, Deutschland