/* This Source Code Form is subject to the terms of the Mozilla Public *License,v.2.0.IfacopyoftheMPLwasnotdistributedwiththis
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/* **File:prftest2.c **Description: **ThisisasimpletestofthePR_snprintf()functiondefined **inprprf.c. ** **ModificationHistory: **14-May-97AGarcia-Convertedthetesttoaccomodatethedebug_modeflag. **Thedebugmodewillprintalloftheprintfsassociatedwiththis *test. **Theregressmodewillbethedefaultmode.Sincetheregresstool *limits **theoutputtoaonelinestatus:PASSorFAIL,alloftheprintf *statements **havebeenhandledwithanif(debug_mode)statement. **04-June-97AGarciaremovedtheTest_Resultfunction.Regresstoolhasbeen *updatedto **recognizethereturncodefromthamainprogram.
***********************************************************************/ /*********************************************************************** **Includes
***********************************************************************/ /* Used to get the command line option */ #include"plgetopt.h"
/* The command line argument: -d is used to determine if the test is being run indebugmode.Theregresstoolrequiresonlyonelineoutput:PASSorFAIL. Alloftheprintfsassociatedwiththistesthasbeenhandledwithaif (debug_mode)test.Usage:test_name-d
*/
PLOptStatus os;
PLOptState* opt = PL_CreateOptState(argc, argv, "d:"); while (PL_OPT_EOL != (os = PL_GetNextOpt(opt))) {
if (PL_OPT_BAD == os) { continue;
} switch (opt->option) { case'd': /* debug mode */
debug_mode = 1; break; default: break;
}
}
PL_DestroyOptState(opt);
/* main test */
i16 = -32;
n = 30;
i32 = 64;
LL_I2L(i64, 333);
PR_snprintf(buf, BUF_SIZE, "%d %hd %lld %ld", n, i16, i64, i32);
if (!strcmp(buf, "30 -32 333 64")) {
if (debug_mode) {
printf("PR_snprintf test 2 passed\n");
}
} else {
if (debug_mode) {
printf("PR_snprintf test 2 failed\n");
printf("Converted string is %s\n", buf);
printf("Should be 30 -32 333 64\n");
} else {
failed_already = 1;
}
}
if (failed_already) {
printf("FAILED\n"); return1;
} else {
printf("PASSED\n"); return0;
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.