Skip to content

Commit

Permalink
#7: More References (Backup)
Browse files Browse the repository at this point in the history
  • Loading branch information
nilshartmann committed Jan 3, 2019
1 parent 275c750 commit 6760bfd
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,19 @@ public void shouldDetectInvalidAnnotationReferences() {
packageFooMustNotAccess("org.moditect.deptective.plugintest.basic.barfieldan"));
}

@Test
public void shouldDetectInvalidAnnotationParameterReferences() {
Compilation compilation = compile();
assertThat(compilation).failed();
// org.moditect.deptective.plugintest.basic.barclass

assertThat(compilation).hadErrorContaining(
packageFooMustNotAccess("org.moditect.deptective.plugintest.basic.barclass"));

assertThat(compilation).hadErrorContaining(
packageFooMustNotAccess("org.moditect.deptective.plugintest.basic.baranparam"));
}

@Test
public void shouldDetectInvalidReturnValueReferences() {
Compilation compilation = compile();
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package org.moditect.deptective.plugintest.basic.baranparam;

public class BarAnnotationParameter {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package org.moditect.deptective.plugintest.basic.barclass;

public class BarClass {

}
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
import java.util.ArrayList;
import java.util.List;

import org.moditect.deptective.plugintest.basic.baranparam.BarAnnotationParameter;
import org.moditect.deptective.plugintest.basic.barclass.BarClass;
import org.moditect.deptective.plugintest.basic.barclazzan.BarClazzAnnotation;
import org.moditect.deptective.plugintest.basic.barctorcall.BarCtorCall;
import org.moditect.deptective.plugintest.basic.barctorparam.BarCtorParam;
Expand All @@ -36,13 +38,14 @@
import org.moditect.deptective.plugintest.basic.barsuper.BarSuper;
import org.moditect.deptective.plugintest.basic.bartypearg.BarTypeArg;

@FooAnnotation
@FooAnnotation(classParameter = BarAnnotationParameter.class)
@BarClazzAnnotation
public class Foo extends BarSuper implements BarInterface, /* allowed: */ IFoo {

@BarFieldAnnotation
@BarFieldAnnotation
private String s;
private final BarField bar = new BarField();
private Class<?> clazz = BarClass.class;

public Foo(BarCtorParam bar) {
}
Expand Down Expand Up @@ -71,10 +74,8 @@ static class InvalidFooGeneric<T extends BarGeneric> {}
static class InvalidFooImplementation extends FooContainer<BarGenType> {}

static interface InnerFoo extends BarInnerInterface {

}

static class InnerFooClass extends BarInnerSuperClass {

}
}

0 comments on commit 6760bfd

Please sign in to comment.