2 sarge_test.cpp - Implementation file for the Sarge command line argument parser test.
12 2019/03/16, Maya Posch
17 #include "../src/sarge.h"
22 int main(int argc, char** argv) {
23 // Create Sarge instance, set stuff, parse stuff.
26 sarge.setArgument("h", "help", "Get help.", false);
27 sarge.setArgument("k", "kittens", "K is for kittens. Everyone needs kittens in their life.", true);
28 sarge.setArgument("n", "number", "Gimme a number. Any number.", true);
29 sarge.setArgument("a", "apple", "Just an apple.", false);
30 sarge.setArgument("b", "bear", "Look, it's a bear.", false);
31 sarge.setArgument("", "snake", "Snakes only come in long form, there are no short snakes.", false);
32 sarge.setDescription("Sarge command line argument parsing testing app. For demonstration purposes and testing.");
33 sarge.setUsage("sarge_test <options>");
35 if (!sarge.parseArguments(argc, argv)) {
36 std::cerr << "Couldn't parse arguments..." << std::endl;
40 std::cout << "Number of flags found: " << sarge.flagCount() << std::endl;
42 if (sarge.exists("help")) {
46 std::cout << "No help requested..." << std::endl;
50 if (sarge.getFlag("kittens", kittens)) {
51 std::cout << "Got kittens: " << kittens << std::endl;
55 if (sarge.getFlag("number", number)) {
56 std::cout << "Got number: " << number << std::endl;
60 if (sarge.getTextArgument(0, textarg)) {
61 std::cout << "Got text argument: " << textarg << std::endl;