### Question:
DelegateExecutionImpl implements BuildingBlockExecution, Serializable { @Override public <T> T getRequiredVariable(final String key) throws RequiredExecutionVariableExeception { final T result; result = this.get(key); if (result == null) { throw new RequiredExecutionVariableExeception(String.format(INVALID_INPUT_MISSING, key)); } return result; } DelegateExecutionImpl(final Map<String, Serializable> seedMap);  DelegateExecutionImpl(final DelegateExecution execution); @JsonIgnore @Override GeneralBuildingBlock getGeneralBuildingBlock(); @Override T getVariable(final String key); @Override T getRequiredVariable(final String key); @Override void setVariable(final String key, final Serializable value); @JsonIgnore @Override Map<ResourceKey, String> getLookupMap(); @JsonIgnore @Override String getFlowToBeCalled(); @JsonIgnore @Override int getCurrentSequence(); void setDelegateExecution(final DelegateExecution execution); @JsonIgnore DelegateExecution getDelegateExecution();  }### Answer:
@Test public void getRequiredVariableNotFound() throws RequiredExecutionVariableExeception { final DelegateExecutionImpl impl = create(); thrown.expect(RequiredExecutionVariableExeception.class); impl.getRequiredVariable("var1"); }