### Question:
RecoveryScheme { @Nonnull public static Builder builder() { return new $AutoValue_RecoveryScheme.Builder(); }  @SerializedName("requiredShareCount") abstract int getRequiredShareCount(); @SerializedName("prime") abstract BigInteger getPrime(); @Nonnull static Builder builder(); @Nonnull static TypeAdapter<RecoveryScheme> typeAdapter(@Nonnull final Gson gson);  }### Answer:
@Test(expected = IllegalStateException.class) public void testInstantiation_requiredShareCountNeverSet() { RecoveryScheme .builder() .setPrime(7) .build(); }
@Test(expected = IllegalStateException.class) public void testInstantiation_primeNeverSet() { RecoveryScheme .builder() .setRequiredShareCount(2) .build(); }
@Test(expected = IllegalStateException.class) public void testInstantiation_requiredShareCountLessThan2() { RecoveryScheme .builder() .setRequiredShareCount(1) .setPrime(7) .build(); }
@Test public void testInstantiation_requiredShareCountEqualTo2() { RecoveryScheme .builder() .setRequiredShareCount(2) .setPrime(7) .build(); }
@Test public void testInstantiation_requiredShareCountGreaterThan2() { RecoveryScheme .builder() .setRequiredShareCount(3) .setPrime(7) .build(); }
@Test public void testInstantiate_requiredShareCountLessThanPrime() { RecoveryScheme .builder() .setRequiredShareCount(2) .setPrime(7) .build(); }
@Test(expected = IllegalStateException.class) public void testInstantiation_requiredShareCountEqualToPrime() { RecoveryScheme .builder() .setRequiredShareCount(7) .setPrime(7) .build(); }
@Test(expected = IllegalStateException.class) public void testInstantiation_requiredShareCountGreaterThanPrime() { RecoveryScheme .builder() .setRequiredShareCount(8) .setPrime(7) .build(); }
@Test(expected = NullPointerException.class) public void testInstantiation_nullPrime() { RecoveryScheme .builder() .setRequiredShareCount(2) .setPrime(null) .build(); }