@SuppressWarnings({"unchecked", "rawtypes"}) public final <ComparableT extends Comparable<?>> ComparableSubject<?, ComparableT> that( @NullableDecl ComparableT actual) { return new ComparableSubject(metadata(), actual) {}; }
/** * Given a factory for some {@code Subject} class, returns a builder whose {@code that(actual)} * method creates instances of that class. Created subjects use the previously set failure * strategy and any previously set failure message. */ public final <S extends Subject<S, A>, A> SimpleSubjectBuilder<S, A> about( Subject.Factory<S, A> factory) { return new SimpleSubjectBuilder<>(metadata(), factory); }
public final <CustomSubjectBuilderT extends CustomSubjectBuilder> CustomSubjectBuilderT about( CustomSubjectBuilder.Factory<CustomSubjectBuilderT> factory) { return factory.createSubjectBuilder(metadata()); }
private void doFail(String message) { metadata().fail(ImmutableList.of(simpleFact(message))); }
public final IterableSubject that(@NullableDecl Iterable<?> actual) { return new IterableSubject(metadata(), actual); }
public final PrimitiveLongArraySubject that(@NullableDecl long[] actual) { return new PrimitiveLongArraySubject(metadata(), actual, "array"); }
public final PrimitiveByteArraySubject that(@NullableDecl byte[] actual) { return new PrimitiveByteArraySubject(metadata(), actual, "array"); }
public final BigDecimalSubject that(@NullableDecl BigDecimal actual) { return new BigDecimalSubject(metadata(), actual); }
public final BooleanSubject that(@NullableDecl Boolean actual) { return new BooleanSubject(metadata(), actual); }
public final StringSubject that(@NullableDecl String actual) { return new StringSubject(metadata(), actual); }
public final <T> ObjectArraySubject<T> that(@NullableDecl T[] actual) { return new ObjectArraySubject<>(metadata(), actual, "array"); }
public final PrimitiveDoubleArraySubject that(@NullableDecl double[] actual) { return new PrimitiveDoubleArraySubject(metadata(), actual, "array"); }
public final GuavaOptionalSubject that(@NullableDecl Optional<?> actual) { return new GuavaOptionalSubject(metadata(), actual, "optional"); }
public final LongSubject that(@NullableDecl Long actual) { return new LongSubject(metadata(), actual); }
public final DoubleSubject that(@NullableDecl Double actual) { return new DoubleSubject(metadata(), actual); }
public final FloatSubject that(@NullableDecl Float actual) { return new FloatSubject(metadata(), actual); }
public final SortedSetSubject that(@NullableDecl SortedSet<?> actual) { return new SortedSetSubject(metadata(), actual); }
public final PrimitiveShortArraySubject that(@NullableDecl short[] actual) { return new PrimitiveShortArraySubject(metadata(), actual, "array"); }
public final TableSubject that(@NullableDecl Table<?, ?, ?> actual) { return new TableSubject(metadata(), actual); }
@GwtIncompatible("ClassSubject.java") public final ClassSubject that(@NullableDecl Class<?> actual) { return new ClassSubject(metadata(), actual); }