public void factory_from_DateTimeAccessor_Instant_ZoneId() {

    assertEquals(ZonedDateTime.from(new DefaultInterfaceDateTimeAccessor() {

      @Override
      public boolean isSupported(DateTimeField field) {

        return field == INSTANT_SECONDS || field == NANO_OF_SECOND;
      }

      @Override
      public long getLong(DateTimeField field) {

        return TCKZonedDateTime.this.TEST_DATE_TIME_PARIS.toInstant().getLong(field);
      }

      @SuppressWarnings("unchecked")
      @Override
      public <R> R query(Query<R> query) {

        if (query == Query.ZONE_ID) {
          return (R) TCKZonedDateTime.this.TEST_DATE_TIME_PARIS.getZone();
        }
        return super.query(query);
      }
    }), this.TEST_DATE_TIME_PARIS);
  }

  @Test(expectedExceptions = DateTimeException.class, groups = { "tck" }