private void doElementDescriptionCheck() { PsiElement elementAtCaret = myFixture.getElementAtCaret(); assertNotNull(elementAtCaret); StringBuilder actualDump = new StringBuilder(); LOCATIONS.forEach( location -> { String actual = ElementDescriptionUtil.getElementDescription(elementAtCaret, location); String locationName = location.getClass().getSimpleName(); actualDump.append(locationName) .append(": ") .append(actual) .append("\n"); } ); UsefulTestCase.assertSameLinesWithFile(getTestResultsFilePath(), actualDump.toString()); }
public void testSourceValueMappingResolveToEnum() { myFixture.configureByText( JavaFileType.INSTANCE, String.format( SOURCE_VALUE_MAPPING, "NORMAL" ) ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiEnumConstant.class, enumConstant -> { assertThat( enumConstant.getName() ).isEqualTo( "NORMAL" ); assertThat( enumConstant.getContainingClass() ).isNotNull(); assertThat( enumConstant.getContainingClass().getName() ).isEqualTo( "RoofType" ); } ); }
public void testTargetValueMappingResolveToEnum() { myFixture.configureByText( JavaFileType.INSTANCE, String.format( TARGET_VALUE_MAPPING, "STANDARD" ) ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiEnumConstant.class, enumConstant -> { assertThat( enumConstant.getName() ).isEqualTo( "STANDARD" ); assertThat( enumConstant.getContainingClass() ).isNotNull(); assertThat( enumConstant.getContainingClass().getName() ).isEqualTo( "ExternalRoofType" ); } ); }
public void testFindUsagesForOnlySetMethodOnTarget() { myFixture.configureByFiles( "OnlySetMethodOnTarget.java" ); Collection<UsageInfo> usages = myFixture.findUsages( myFixture.getElementAtCaret() ); assertThat( usages ).isEmpty(); }
public void testCarMapperReferenceTargetPropertyInCarDtoWithBuilder() { myFixture.configureByFile( "CarMapperReferenceBuilderTargetProperty.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiMethod.class, method -> { assertThat( method.getName() ).isEqualTo( "seatCount" ); assertThat( method.getPresentation() ).isNotNull(); assertThat( method.getPresentation().getPresentableText() ).isEqualTo( "seatCount(int)" ); assertThat( method.getReturnType() ).isNotNull(); assertThat( method.getReturnType().getPresentableText() ).isEqualTo( "Builder" ); } ); }
public void testCarMapperReferenceTargetPropertyInCarDto() { myFixture.configureByFile( "CarMapperReferenceTargetProperty.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiMethod.class, method -> { assertThat( method.getName() ).isEqualTo( "setSeatCount" ); assertThat( method.getPresentation() ).isNotNull(); assertThat( method.getPresentation().getPresentableText() ).isEqualTo( "setSeatCount(int)" ); assertThat( method.getReturnType() ).isNotNull(); assertThat( method.getReturnType().getPresentableText() ).isEqualTo( "void" ); } ); }
public void testFindUsagesForOnlyGetMethodOnSource() { myFixture.configureByFiles( "OnlyGetMethodOnSource.java" ); Collection<UsageInfo> usages = myFixture.findUsages( myFixture.getElementAtCaret() ); assertThat( usages ).isEmpty(); }
public void testCarMapperReferenceSourcePropertyInCarDto() { myFixture.configureByFile( "CarMapperReferenceSourceProperty.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiMethod.class, method -> { assertThat( method.getName() ).isEqualTo( "getNumberOfSeats" ); assertThat( method.getPresentation() ).isNotNull(); assertThat( method.getPresentation().getPresentableText() ).isEqualTo( "getNumberOfSeats()" ); assertThat( method.getParameterList().getParametersCount() ).isEqualTo( 0 ); assertThat( method.getReturnType() ).isNotNull(); assertThat( method.getReturnType().getPresentableText() ).isEqualTo( "int" ); } ); }
public void testCarMapperReferenceBooleanSourceCar() { myFixture.configureByFile( "CarMapperReferenceBooleanSourceCar.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiMethod.class, method -> { assertThat( method.getName() ).isEqualTo( "isFree" ); assertThat( method.getPresentation() ).isNotNull(); assertThat( method.getPresentation().getPresentableText() ).isEqualTo( "isFree()" ); assertThat( method.getParameterList().getParametersCount() ).isEqualTo( 0 ); assertThat( method.getReturnType() ).isNotNull(); assertThat( method.getReturnType().getPresentableText() ).isEqualTo( "boolean" ); } ); }
public void testTargetPropertyReferencesTargetParameter() { myFixture.configureByFile( "TargetPropertyReferencesTargetParameter.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiParameter.class, parameter -> { assertThat( parameter.getName() ).isEqualTo( "target" ); assertThat( parameter.getType().getPresentableText() ).isEqualTo( "CarDto" ); PsiMethod mappingMethod = PsiTreeUtil.getParentOfType( parameter, PsiMethod.class ); assertThat( mappingMethod ).isNotNull(); assertThat( mappingMethod.getName() ).isEqualTo( "update" ); assertThat( mappingMethod.getReturnType() ).isNotNull(); assertThat( mappingMethod.getReturnType().getPresentableText() ).isEqualTo( "void" ); } ); }
public void testSourcePropertyReferencesSourceParameter() { myFixture.configureByFile( "SourcePropertyReferencesSourceParameter.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiParameter.class, parameter -> { assertThat( parameter.getName() ).isEqualTo( "source" ); assertThat( parameter.getType().getPresentableText() ).isEqualTo( "Car" ); PsiMethod mappingMethod = PsiTreeUtil.getParentOfType( parameter, PsiMethod.class ); assertThat( mappingMethod ).isNotNull(); assertThat( mappingMethod.getName() ).isEqualTo( "map" ); assertThat( mappingMethod.getReturnType() ).isNotNull(); assertThat( mappingMethod.getReturnType().getPresentableText() ).isEqualTo( "CarDto" ); } ); }
public void testNestedFirstLevelReferenceSourceProperty() { myFixture.configureByFile( "NestedFirstLevelReferenceSourceProperty.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiMethod.class, method -> { assertThat( method.getName() ).isEqualTo( "getDriver" ); assertThat( method.getPresentation() ).isNotNull(); assertThat( method.getPresentation().getPresentableText() ).isEqualTo( "getDriver()" ); assertThat( method.getParameterList().getParametersCount() ).isEqualTo( 0 ); assertThat( method.getReturnType() ).isNotNull(); assertThat( method.getReturnType().getPresentableText() ).isEqualTo( "Person" ); PsiClass person = PsiTreeUtil.getParentOfType( method, PsiClass.class ); assertThat( person ).isNotNull(); assertThat( person.getName() ).isEqualTo( "Car" ); } ); }
public void testNestedSecondLevelReferenceSourceProperty() { myFixture.configureByFile( "NestedSecondLevelReferenceSourceProperty.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiMethod.class, method -> { assertThat( method.getName() ).isEqualTo( "getName" ); assertThat( method.getPresentation() ).isNotNull(); assertThat( method.getPresentation().getPresentableText() ).isEqualTo( "getName()" ); assertThat( method.getParameterList().getParametersCount() ).isEqualTo( 0 ); assertThat( method.getReturnType() ).isNotNull(); assertThat( method.getReturnType().getPresentableText() ).isEqualTo( "String" ); PsiClass person = PsiTreeUtil.getParentOfType( method, PsiClass.class ); assertThat( person ).isNotNull(); assertThat( person.getName() ).isEqualTo( "Person" ); } ); }
public void testFindUsagesTargetReferenceMethod() { myFixture.configureByFiles( "RenameTargetReference.java" ); Collection<UsageInfo> usages = myFixture.findUsages( myFixture.getElementAtCaret() ); assertThat( usages ).hasSize( 1 ); UsageInfo usageInfo = usages.iterator().next(); PsiElement element = usageInfo.getElement(); assertThat( element ) .isInstanceOfSatisfying( PsiLiteralExpression.class, expression -> { PsiReference[] references = expression.getReferences(); assertThat( references ).hasSize( 1 ); assertThat( references[0] ) .isInstanceOfSatisfying( PsiReferenceBase.class, psiReferenceBase -> { assertThat( psiReferenceBase.getValue() ).isEqualTo( "testName" ); } ); } ); }
public void testNestedFirstLevelReferenceTargetProperty() { myFixture.configureByFile( "NestedFirstLevelReferenceTargetProperty.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiMethod.class, method -> { assertThat( method.getName() ).isEqualTo( "setMyDriver" ); assertThat( method.getPresentation() ).isNotNull(); assertThat( method.getPresentation().getPresentableText() ).isEqualTo( "setMyDriver(PersonDto)" ); assertThat( method.getParameterList().getParametersCount() ).isEqualTo( 1 ); assertThat( method.getReturnType() ).isNotNull(); assertThat( method.getReturnType().getPresentableText() ).isEqualTo( "void" ); PsiClass person = PsiTreeUtil.getParentOfType( method, PsiClass.class ); assertThat( person ).isNotNull(); assertThat( person.getName() ).isEqualTo( "CarDto" ); } ); }
public void testNestedSecondLevelReferenceTargetProperty() { myFixture.configureByFile( "NestedSecondLevelReferenceTargetProperty.java" ); PsiElement reference = myFixture.getElementAtCaret(); assertThat( reference ) .isInstanceOfSatisfying( PsiMethod.class, method -> { assertThat( method.getName() ).isEqualTo( "setName" ); assertThat( method.getPresentation() ).isNotNull(); assertThat( method.getPresentation().getPresentableText() ).isEqualTo( "setName(String)" ); assertThat( method.getParameterList().getParametersCount() ).isEqualTo( 1 ); assertThat( method.getReturnType() ).isNotNull(); assertThat( method.getReturnType().getPresentableText() ).isEqualTo( "void" ); PsiClass person = PsiTreeUtil.getParentOfType( method, PsiClass.class ); assertThat( person ).isNotNull(); assertThat( person.getName() ).isEqualTo( "PersonDto" ); } ); }
public void testFindUsagesBuilderTargetReferenceMethod() { myFixture.configureByFiles( "RenameBuilderTargetReference.java" ); Collection<UsageInfo> usages = myFixture.findUsages( myFixture.getElementAtCaret() ); assertThat( usages ).hasSize( 1 ); UsageInfo usageInfo = usages.iterator().next(); PsiElement element = usageInfo.getElement(); assertThat( element ) .isInstanceOfSatisfying( PsiLiteralExpression.class, expression -> { PsiReference[] references = expression.getReferences(); assertThat( references ).hasSize( 1 ); assertThat( references[0] ) .isInstanceOfSatisfying( PsiReferenceBase.class, psiReferenceBase -> { assertThat( psiReferenceBase.getValue() ).isEqualTo( "testName" ); } ); } ); }
public void testIssue10Mapper() { myFixture.configureByFiles( getTestName( false ) + ".java" ); Collection<UsageInfo> usages = myFixture.findUsages( myFixture.getElementAtCaret() ); assertThat( usages ).isEmpty(); }
protected void doTest(String fileName, String argsString) { initWithFileSmart(fileName); PsiElement elementAtCaret = myFixture.getElementAtCaret(); assertNotNull(elementAtCaret); PerlSubDefinitionElement subBase = PsiTreeUtil.getParentOfType(elementAtCaret, PerlSubDefinitionElement.class, false); assertNotNull(subBase); assertEquals(argsString, subBase.getSubArgumentsListAsString()); } }
public void testRenameImportedProtoAtCaretPosition() { PsiFile[] files = myFixture.configureByFiles( "rename/import/source.proto", "rename/import/import.proto" ); PsiElement elementAtCaret = myFixture.getElementAtCaret(); Project project = myFixture.getProject(); RenameProcessor processor = new RenameProcessor(project, elementAtCaret, "renamed.proto", false, false); for (AutomaticRenamerFactory factory : Extensions.getExtensions(AutomaticRenamerFactory.EP_NAME)) { processor.addRenamerFactory(factory); } processor.run(); Assert.assertEquals("renamed.proto", files[1].getName()); Assert.assertEquals("import \"rename/import/renamed.proto\";", ((ProtoPsiFileRoot) files[0]).getProtoRoot().getImports().get(0).getText()); }