@Test
  public void spaceInFirstName() throws Exception {
    Mailbox mbox =
        MailboxManager.getInstance().getMailboxByAccountId(MockProvisioning.DEFAULT_ACCOUNT_ID);
    Map<String, Object> fields = new HashMap<String, Object>();
    fields.put(ContactConstants.A_firstName, "First Second Third Forth");
    fields.put(ContactConstants.A_lastName, "Last");
    fields.put(ContactConstants.A_email, "*****@*****.**");
    mbox.createContact(null, new ParsedContact(fields), Mailbox.ID_FOLDER_CONTACTS, null);

    ContactAutoComplete autocomplete =
        new ContactAutoComplete(mbox.getAccount(), new OperationContext(mbox));
    Assert.assertEquals(
        1, autocomplete.query("first second third forth", null, 100).entries.size());
  }
  @Test
  public void reservedQueryTerm() throws Exception {
    Mailbox mbox =
        MailboxManager.getInstance().getMailboxByAccountId(MockProvisioning.DEFAULT_ACCOUNT_ID);
    Map<String, Object> fields = new HashMap<String, Object>();
    fields.put(ContactConstants.A_firstName, "not and or");
    fields.put(ContactConstants.A_lastName, "subject: from:");
    fields.put(ContactConstants.A_email, "*****@*****.**");
    mbox.createContact(null, new ParsedContact(fields), Mailbox.ID_FOLDER_CONTACTS, null);

    ContactAutoComplete autocomplete =
        new ContactAutoComplete(mbox.getAccount(), new OperationContext(mbox));
    Assert.assertEquals(1, autocomplete.query("not", null, 100).entries.size());
    Assert.assertEquals(1, autocomplete.query("not and", null, 100).entries.size());
    Assert.assertEquals(1, autocomplete.query("not and or", null, 100).entries.size());
    Assert.assertEquals(1, autocomplete.query("subject:", null, 100).entries.size());
    Assert.assertEquals(1, autocomplete.query("subject: from:", null, 100).entries.size());
  }