Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  * Copyright (c) 2015,
  * Permission to use, copy, modify, and/or distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
  * copyright notice and this permission notice appear in all copies.
package com.github.nwillc.contracts;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Fail.failBecauseExceptionWasNotThrown;

This contract checks:
  • compareTo with null argument throws NullPointerException
  • compareTo with argument that can't be cast to correct type throws ClassCastException
  • returns 0 on equality
  • returns less then zero on less then
  • returns greater then zero on greater
public abstract class ComparableContract<T extends Comparable> {
	private T value;
	private T equalValue;
	private T lesserValue;
	protected abstract T getValue();
	protected abstract T getEqualToValue();
	protected abstract T getLessThanValue();
	public void contractSetup() throws Exception {
	public void shouldThrowExceptionForNull() throws Exception {
		try {
catch (NullPointerException e) {}
	public void shouldThrowExceptionForBadCast() throws Exception {
		try {
catch (ClassCastException e) {}
	public void shouldReturnZeroOnEquality() throws Exception {
	public void shouldReturnNegativeOnLessThan() throws Exception {
	public void shouldReturnPositiveOnGreaterThan() throws Exception {
New to GrepCode? Check out our FAQ X