ListOfMatchExpression.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. "use strict";
  2. var assert = require("assert"),
  3. MatchExpression = require("../../../../lib/pipeline/matcher/MatchExpression"),
  4. ListOfMatchExpression = require("../../../../lib/pipeline/matcher/ListOfMatchExpression");
  5. module.exports = {
  6. "ListOfMatchExpression": {
  7. "Constructor": function (){
  8. var e = new ListOfMatchExpression('AND');
  9. assert.equal(e._matchType, "AND");
  10. },
  11. "Add": function () {
  12. var e = new ListOfMatchExpression();
  13. e.add(new MatchExpression("OR"));
  14. assert.equal(e._expressions[0]._matchType, "OR");
  15. },
  16. "Add2": function () {
  17. var e = new ListOfMatchExpression();
  18. e.add(new MatchExpression("OR"));
  19. e.add(new MatchExpression("NOT"));
  20. assert.equal(e._expressions[0]._matchType, "OR");
  21. assert.equal(e._expressions[1]._matchType, "NOT");
  22. },
  23. "ClearAndRelease": function () {
  24. var e = new ListOfMatchExpression();
  25. e.add(new MatchExpression("OR"));
  26. e.add(new MatchExpression("NOT"));
  27. e.clearAndRelease();
  28. assert.equal(e._expressions.length, 0);
  29. },
  30. "NumChildren": function () {
  31. var e = new ListOfMatchExpression();
  32. e.add(new MatchExpression("OR"));
  33. e.add(new MatchExpression("NOT"));
  34. assert.equal(e.numChildren(), 2);
  35. },
  36. "GetChild": function () {
  37. var e = new ListOfMatchExpression(),
  38. match1 = new MatchExpression("NOT");
  39. e.add(new MatchExpression("OR"));
  40. e.add(match1);
  41. assert.deepEqual(e.getChild(1), match1);
  42. },
  43. "GetChildVector": function () {
  44. var e = new ListOfMatchExpression(),
  45. match0 = new MatchExpression("NOT"),
  46. match1 = new MatchExpression("OR");
  47. e.add(match0);
  48. e.add(match1);
  49. assert.equal(e.getChildVector().length, 2);
  50. },
  51. "Equivalent": function () {
  52. var e = new ListOfMatchExpression('TEXT'),
  53. f = new ListOfMatchExpression("TEXT");
  54. assert.equal(e.equivalent(f), true);
  55. }
  56. }
  57. };
  58. if (!module.parent)(new(require("mocha"))()).ui("exports").reporter("spec").addFile(__filename).run(process.exit);