title: Cucumber+Gherkin: Parse natural language to boolean
body: <p>So, we just introduced Cucumber + Gherkin to explore e2e testing in our fairly fresh Angular2 project. We decided to write the step definitions in JS. I am trying to be fairly generic in the steps definitions.
  This is what I am trying to achieve:</p>
  
  <p>We have</p>
  
  <p><code>this.Then(/^I should see (.*) on the page$/, function(componentName, callback) {
      expect(element(by.id(componentName)).isPresent()).to.eventually.be.true;
      setTimeout(callback, 1000);
    });</code></p>
  
  <p>I would like to also allow definitions in the form of:</p>
  
  <p><code>Then I should not see Results on the page</code></p>
  
  <p>To denote that certain elements are not supposed to be displayed. Any elegant way of doing that or even built in-tools I could use? The documentation and googling only gave me things that included <code>true/false</code> in the description. I have a feeling that c'n'p will make our step definitions grow super quickly and make maintenance unnecessarily hard unless we figure out this kind of thing up front.
  Stop me if you think this is a stupid idea and if so please tell me why.</p>