import 'package:libac_dart/argparse/Args.dart'; import 'package:libac_dart/argparse/Builder.dart'; import 'package:libac_dart/argparse/CLIHelper.dart'; import 'package:libac_dart/argparse/Parser.dart'; import 'package:libac_dart/argparse/types/Bool.dart'; import 'package:libac_dart/argparse/types/String.dart'; import 'package:test/expect.dart'; import 'package:test/scaffolding.dart'; void main() { test("Test parsing a argument", () async { List testArgs = ["--test", "12", "--enable", "--put=Here"]; Arguments parsed = ArgumentParser.parse(testArgs); expect(parsed.hasArg("test"), true); expect(parsed.getArg("test")!.getValue() as int, 12); expect( parsed.getArg("test")!.getType(), ArgumentType.INTEGER, ); expect(parsed.hasArg("enable"), true); expect( parsed.getArg("enable")!.getType(), ArgumentType.BOOL, ); expect(parsed.getArg("put")!.getValue() as String, "Here"); }); test("Test printing Usage", () async { Arguments testArgs = ArgumentsBuilder.builder() .withArgument(BoolArgument(name: "use_legacy")) .withArgument(StringArgument(name: "output", value: "./out")) .build(); String usage = ArgumentHelpers.generateHelpMessage( testArgs.getArgumentsList(), "Testsuite"); print("LibAC_Dart\nTestsuite - 1.0\n\n${usage}"); }); }