public static Function<ClassInfo, ClassName> toClassName() { return a -> a.getName(); }
private Function<ClassInfo, String> classInfoToJavaName() { return a -> a.getName().asJavaName(); }
private static Function<ClassInfo, String> classInfoToName() { return a -> a.getName().asInternalName(); }
public String getPackageName() { final String packageName = getMutatedClasses().iterator().next().getName() .asJavaName(); final int lastDot = packageName.lastIndexOf('.'); return lastDot > 0 ? packageName.substring(0, lastDot) : "default"; }
private boolean descendsFrom(final ClassName clazz) { if (!this.getSuperClass().isPresent()) { return false; } if (this.getSuperClass().get().getName().equals(clazz)) { return true; } return getSuperClass().get().descendsFrom(clazz); }
private boolean isLineCovered(final int line) { final Predicate<ClassInfo> predicate = a -> !AnnotatedLineFactory.this.statistics.getTestsForClassLine( new ClassLine(a.getName().asInternalName(), line)).isEmpty(); return FCollection.contains(this.classesInFile, predicate); }
private SideEffect1<ClassInfo> throwErrorIfHasNoSourceFile() { return a -> { if (a.getSourceFileName() == null) { throw new PitHelpError(Help.NO_SOURCE_FILE, a.getName().asJavaName()); } }; }
private static Function<ClassInfo, String> keyFromClassInfo() { return c -> keyFromSourceAndPackage(c.getSourceFileName(), c.getName() .getPackage().asJavaName()); }
private String getOuterClassNameFor(final Class<?> clazz) { return this.testee.fetchClass(clazz).get().getOuterClass().get() .getName().asInternalName(); }
private String getOuterClassNameFor(final Class<?> clazz) { return this.testee.fetchClass(clazz).get().getOuterClass().get() .getName().asInternalName(); }
@Test public void shouldProvideNamesOfCodeClasses() { final ClassInfo foo = makeClassInfo("Foo"); final ClassInfo bar = makeClassInfo("Bar"); when(this.classPath.code()).thenReturn( Arrays.asList(foo.getName(), bar.getName())); assertThat(this.testee.getCodeUnderTestNames()).containsOnly(ClassName.fromString("Foo") , ClassName.fromString("Bar")); }
@Test public void shouldReportSuperClassAsObjectWhenNoneDeclared() { final Optional<ClassInfo> aClass = this.testee.fetchClass(Foo.class); assertEquals(ClassName.fromClass(Object.class), aClass.get().getSuperClass() .get().getName()); }
@Test public void shouldReportSuperClass() { final Optional<ClassInfo> aClass = this.testee.fetchClass(Bar.class); assertEquals(ClassName.fromClass(Foo.class), aClass.get().getSuperClass() .get().getName()); }
@Test public void shouldReportSuperClassAsObjectWhenNoneDeclared() { final Optional<ClassInfo> aClass = this.testee.fetchClass(Foo.class); assertEquals(ClassName.fromClass(Object.class), aClass.get().getSuperClass() .get().getName()); }
@Test public void shouldReportSuperClass() { final Optional<ClassInfo> aClass = this.testee.fetchClass(Bar.class); assertEquals(ClassName.fromClass(Foo.class), aClass.get().getSuperClass() .get().getName()); }
public static Function<ClassInfo, ClassName> toClassName() { return a -> a.getName(); }
private boolean descendsFrom(final ClassName clazz) { if (!this.getSuperClass().isPresent()) { return false; } if (this.getSuperClass().get().getName().equals(clazz)) { return true; } return getSuperClass().get().descendsFrom(clazz); }