expected.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. var nomnom = require("../nomnom");
  2. var opts = {
  3. file: {
  4. position: 0,
  5. required: true
  6. }
  7. }
  8. var parser = nomnom().options(opts);
  9. exports.testFlag = function(test) {
  10. test.expect(1);
  11. nomnom().options({
  12. file: {
  13. position: 0,
  14. }
  15. })
  16. .printer(function(string) {
  17. test.equal(0, string.indexOf("'--key1' expects a value"))
  18. test.done();
  19. })
  20. .parse(["--key1"]);
  21. }
  22. exports.testRequired = function(test) {
  23. test.expect(1);
  24. nomnom().options({
  25. file: {
  26. required: true
  27. }
  28. })
  29. .printer(function(string) {
  30. test.equal(0, string.trim().indexOf("file argument is required"))
  31. test.done();
  32. })
  33. .nocolors()
  34. .parse([]);
  35. }
  36. exports.testChoices = function(test) {
  37. test.expect(2);
  38. var parser = nomnom().options({
  39. color: {
  40. choices: ['green', 'blue']
  41. }
  42. })
  43. .printer(function(string) {
  44. test.equal(0, string.indexOf("color must be one of: green, blue"))
  45. });
  46. parser.parse(['--color', 'red']);
  47. var options = parser.parse(['--color', 'green']);
  48. test.equal(options.color, 'green');
  49. test.done();
  50. }