mirror of
https://github.com/corda/corda.git
synced 2025-06-15 13:48:14 +00:00
add unit tests for arg parser
This commit is contained in:
committed by
Joshua Warner
parent
e9be3c4e07
commit
24c0fab9bf
69
unittest/util/arg-parser-test.cpp
Normal file
69
unittest/util/arg-parser-test.cpp
Normal file
@ -0,0 +1,69 @@
|
||||
/* Copyright (c) 2008-2011, Avian Contributors
|
||||
|
||||
Permission to use, copy, modify, and/or distribute this software
|
||||
for any purpose with or without fee is hereby granted, provided
|
||||
that the above copyright notice and this permission notice appear
|
||||
in all copies.
|
||||
|
||||
There is NO WARRANTY for this software. See license.txt for
|
||||
details. */
|
||||
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "common.h"
|
||||
|
||||
#include "util/arg-parser.h"
|
||||
|
||||
#include "test-harness.h"
|
||||
|
||||
using namespace avian::util;
|
||||
|
||||
class ArgParserTest : public Test {
|
||||
public:
|
||||
ArgParserTest():
|
||||
Test("ArgParser")
|
||||
{}
|
||||
|
||||
virtual void run() {
|
||||
{
|
||||
ArgParser parser;
|
||||
Arg arg1(parser, false, "arg1", "<value>");
|
||||
Arg required2(parser, true, "required2", "<value>");
|
||||
const char* args[] = {
|
||||
"myExecutable",
|
||||
"-arg1", "myValue1",
|
||||
"-required2", "myRequired2",
|
||||
0
|
||||
};
|
||||
assertTrue(parser.parse(sizeof(args) / sizeof(char*) - 1, args));
|
||||
assertEqual("myValue1", arg1.value);
|
||||
assertEqual("myRequired2", required2.value);
|
||||
}
|
||||
|
||||
{
|
||||
ArgParser parser;
|
||||
Arg arg1(parser, false, "arg1", "<value>");
|
||||
Arg required2(parser, true, "required2", "<value>");
|
||||
const char* args[] = {
|
||||
"myExecutable",
|
||||
"-arg1", "myValue1",
|
||||
"-required2",
|
||||
0
|
||||
};
|
||||
assertFalse(parser.parse(sizeof(args) / sizeof(char*) - 1, args));
|
||||
}
|
||||
|
||||
{
|
||||
ArgParser parser;
|
||||
Arg arg1(parser, false, "arg1", "<value>");
|
||||
Arg required2(parser, true, "required2", "<value>");
|
||||
const char* args[] = {
|
||||
"myExecutable",
|
||||
"-arg1", "myValue1",
|
||||
0
|
||||
};
|
||||
assertFalse(parser.parse(sizeof(args) / sizeof(char*) - 1, args));
|
||||
}
|
||||
}
|
||||
} argParserTest;
|
Reference in New Issue
Block a user