code: public void value(String expectedValue, double seconds) {
          double end = System.currentTimeMillis() + (seconds * 1000);
          try {
              double timeTook = elementPresent(seconds);
              WebDriverWait wait = new WebDriverWait(element.getDriver(), (long) (seconds - timeTook), DEFAULT_POLLING_INTERVAL);
              wait.until(ExpectedConditions.textToBePresentInElementValue(element.defineByElement(), expectedValue));
              timeTook = Math.min((seconds * 1000) - (end - System.currentTimeMillis()), seconds * 1000) / 1000;
              checkValue(expectedValue, seconds, timeTook);
          } catch (TimeoutException e) {
              checkValue(expectedValue, seconds, seconds);
          }
      }
docs: Waits for the element's value equals the provided expected value. If
  the element isn't present or an input, this will constitute a failure,
  same as a mismatch.
  The provided wait time will be used and if the element doesn't
  have the desired match count at that time, it will fail, and log
  the issue with a screenshot for traceability and added debugging support.
  
  @param expectedValue - the expected input value of the element
  @param seconds       - how many seconds to wait for