@Test void null_if_variable_not_initilialized_method_invocation() throws Exception { ExpressionTree tree = firstExpression( "void foo(String prop){ foo(myValue);} " + "java.util.Properties props = new java.util.Properties();" + "String myValue = \"hello\";"); ExpressionTree defaultValue = JavaPropertiesHelper.retrievedPropertyDefaultValue(((MethodInvocationTree) tree).arguments().get(0)); assertThat(defaultValue).isNull(); }
@CheckForNull public static ExpressionTree retrievedPropertyDefaultValue(ExpressionTree expression) { if (expression.is(Tree.Kind.IDENTIFIER)) { return retrievedPropertyDefaultValue((IdentifierTree) expression); } else if (expression.is(Tree.Kind.METHOD_INVOCATION)) { return retrievedPropertyDefaultValue((MethodInvocationTree) expression); } return null; }
JavaPropertiesHelper { @CheckForNull public static ExpressionTree retrievedPropertyDefaultValue(ExpressionTree expression) { if (expression.is(Tree.Kind.IDENTIFIER)) { return retrievedPropertyDefaultValue((IdentifierTree) expression); } else if (expression.is(Tree.Kind.METHOD_INVOCATION)) { return retrievedPropertyDefaultValue((MethodInvocationTree) expression); } return null; } }
JavaPropertiesHelper { @CheckForNull public static ExpressionTree retrievedPropertyDefaultValue(ExpressionTree expression) { if (expression.is(Tree.Kind.IDENTIFIER)) { return retrievedPropertyDefaultValue((IdentifierTree) expression); } else if (expression.is(Tree.Kind.METHOD_INVOCATION)) { return retrievedPropertyDefaultValue((MethodInvocationTree) expression); } return null; } private  JavaPropertiesHelper(); }
JavaPropertiesHelper { @CheckForNull public static ExpressionTree retrievedPropertyDefaultValue(ExpressionTree expression) { if (expression.is(Tree.Kind.IDENTIFIER)) { return retrievedPropertyDefaultValue((IdentifierTree) expression); } else if (expression.is(Tree.Kind.METHOD_INVOCATION)) { return retrievedPropertyDefaultValue((MethodInvocationTree) expression); } return null; } private  JavaPropertiesHelper(); @CheckForNull static ExpressionTree retrievedPropertyDefaultValue(ExpressionTree expression); }
JavaPropertiesHelper { @CheckForNull public static ExpressionTree retrievedPropertyDefaultValue(ExpressionTree expression) { if (expression.is(Tree.Kind.IDENTIFIER)) { return retrievedPropertyDefaultValue((IdentifierTree) expression); } else if (expression.is(Tree.Kind.METHOD_INVOCATION)) { return retrievedPropertyDefaultValue((MethodInvocationTree) expression); } return null; } private  JavaPropertiesHelper(); @CheckForNull static ExpressionTree retrievedPropertyDefaultValue(ExpressionTree expression);  }