Example #1
0
File: testCli.js Project: edc/gcli
exports.testIncompleteMultiMatch = function() {
  update({ typed: 't', cursor: { start: 1, end: 1 } });
  t.verifyEqual(  'I', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(-1, assignC.paramIndex);
  t.verifyTrue(assignC.getPredictions().length > 0);
  t.verifyTrue(assignC.getPredictions().length < 20); // could break ...
  verifyPredictionsContains('tsv', assignC.getPredictions());
  verifyPredictionsContains('tsr', assignC.getPredictions());
  t.verifyTrue(null == requ.commandAssignment.getValue());
};
Example #2
0
File: testCli.js Project: edc/gcli
exports.testIncompleteSingleMatch = function() {
  update({ typed: 'tselar', cursor: { start: 6, end: 6 } });
  t.verifyEqual(  'IIIIII', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(-1, assignC.paramIndex);
  t.verifyEqual(1, assignC.getPredictions().length);
  t.verifyEqual('tselarr', assignC.getPredictions()[0].value.name);
  t.verifyTrue(null == requ.commandAssignment.getValue());
};
Example #3
0
File: testCli.js Project: edc/gcli
exports.testTsv = function() {
  update({ typed: 'tsv', cursor: { start: 3, end: 3 } });
  t.verifyEqual(  'VVV', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(-1, assignC.paramIndex);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);

  update({ typed: 'tsv ', cursor: { start: 4, end: 4 } });
  t.verifyEqual(  'VVVV', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(0, assignC.paramIndex);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);

  update({ typed: 'tsv ', cursor: { start: 2, end: 2 } });
  t.verifyEqual(  'VVVV', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(-1, assignC.paramIndex);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);

  update({ typed: 'tsv o', cursor: { start: 5, end: 5 } });
  t.verifyEqual(  'VVVVI', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(0, assignC.paramIndex);
  t.verifyEqual(2, assignC.getPredictions().length);
  t.verifyTrue(commands.option1, assignC.getPredictions()[0].value);
  t.verifyTrue(commands.option2, assignC.getPredictions()[1].value);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);
  t.verifyEqual('o', assign1.getArg().text);
  t.verifyEqual(undefined, assign1.getValue());

  update({ typed: 'tsv option', cursor: { start: 10, end: 10 } });
  t.verifyEqual(  'VVVVIIIIII', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(0, assignC.paramIndex);
  t.verifyEqual(2, assignC.getPredictions().length);
  t.verifyTrue(commands.option1, assignC.getPredictions()[0].value);
  t.verifyTrue(commands.option2, assignC.getPredictions()[1].value);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);
  t.verifyEqual('option', assign1.getArg().text);
  t.verifyEqual(undefined, assign1.getValue());

  update({ typed: 'tsv option', cursor: { start: 1, end: 1 } });
  t.verifyEqual(  'VVVVEEEEEE', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(-1, assignC.paramIndex);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);
  t.verifyEqual('option', assign1.getArg().text);
  t.verifyEqual(undefined, assign1.getValue());

  update({ typed: 'tsv option ', cursor: { start: 11, end: 11 } });
  t.verifyEqual(  'VVVVEEEEEEV', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual(1, assignC.paramIndex);
  t.verifyEqual(0, assignC.getPredictions().length);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);
  t.verifyEqual('option', assign1.getArg().text);
  t.verifyEqual(undefined, assign1.getValue());

  update({ typed: 'tsv option1', cursor: { start: 11, end: 11 } });
  t.verifyEqual(  'VVVVVVVVVVV', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);
  t.verifyEqual('option1', assign1.getArg().text);
  t.verifyEqual(commands.option1, assign1.getValue());
  t.verifyEqual(0, assignC.paramIndex);

  update({ typed: 'tsv option1 ', cursor: { start: 12, end: 12 } });
  t.verifyEqual(  'VVVVVVVVVVVV', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);
  t.verifyEqual('option1', assign1.getArg().text);
  t.verifyEqual(commands.option1, assign1.getValue());
  t.verifyEqual(1, assignC.paramIndex);

  update({ typed: 'tsv option1 6', cursor: { start: 13, end: 13 } });
  t.verifyEqual(  'VVVVVVVVVVVVV', statuses);
  t.verifySame(Status.VALID, status);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);
  t.verifyEqual('option1', assign1.getArg().text);
  t.verifyEqual(commands.option1, assign1.getValue());
  t.verifyEqual('6', assign2.getArg().text);
  t.verifyEqual(6, assign2.getValue());
  t.verifyEqual('number', typeof assign2.getValue());
  t.verifyEqual(1, assignC.paramIndex);

  update({ typed: 'tsv option2 6', cursor: { start: 13, end: 13 } });
  t.verifyEqual(  'VVVVVVVVVVVVE', statuses);
  t.verifySame(Status.ERROR, status);
  t.verifyEqual('tsv', requ.commandAssignment.getValue().name);
  t.verifyEqual('option2', assign1.getArg().text);
  t.verifyEqual(commands.option2, assign1.getValue());
  t.verifyEqual('6', assign2.getArg().text);
  t.verifyEqual(undefined, assign2.getValue());
  t.verifyEqual(1, assignC.paramIndex);
};