PropertyFacade extends ItemFacade<Property, S> implements Property { @Override public String getString() throws RepositoryException { return delegate.getString(); } @SuppressWarnings("WeakerAccess")  PropertyFacade(final @NotNull Property delegate,
                          final @NotNull SessionFacade<S> session); @Override Value getValue(); @Override Value[] getValues(); @Override String getString(); @SuppressWarnings("deprecation") @Override InputStream getStream(); @Override Binary getBinary(); @Override long getLong(); @Override double getDouble(); @Override BigDecimal getDecimal(); @Override Calendar getDate(); @Override boolean getBoolean(); @Override Node getNode(); @Override Property getProperty(); @Override long getLength(); @Override long[] getLengths(); @Override PropertyDefinition getDefinition(); @Override int getType(); @Override boolean isMultiple(); @Override void setValue(Value value); @Override void setValue(Value[] values); @Override void setValue(String value); @Override void setValue(String[] values); @Override void setValue(InputStream value); @Override void setValue(Binary value); @Override void setValue(long value); @Override void setValue(double value); @Override void setValue(BigDecimal value); @Override void setValue(Calendar value); @Override void setValue(boolean value); @Override void setValue(Node value);  }
@Test public void testGetString() throws Exception { Property delegate = mock(Property.class); PropertyFacade<Session> facade = getFacade(delegate); final String value = "value"; when(delegate.getString()).thenReturn(value); assertSame("same value", value, facade.getString()); }