Add numwant provider class

This commit is contained in:
anthonyraymond 2017-07-19 22:22:22 +02:00
parent 8985382b5b
commit c7d41d2ab1
2 changed files with 92 additions and 0 deletions

View file

@ -0,0 +1,29 @@
package org.araymond.joal.core.client.emulated.generator.numwant;
import com.google.common.base.Preconditions;
/**
* Created by raymo on 19/07/2017.
*/
public class NumwantProvider {
private final Integer numwant;
private final Integer numwantOnStop;
public NumwantProvider(final Integer numwant, final Integer numwantOnStop) {
Preconditions.checkNotNull(numwant, "numwant must not be null.");
Preconditions.checkArgument(numwant > 0, "numwant must be at least 1.");
Preconditions.checkNotNull(numwantOnStop, "numwantOnStop must not be null.");
Preconditions.checkArgument(numwantOnStop >= 0, "numwantOnStop must be at least 0.");
this.numwant = numwant;
this.numwantOnStop = numwantOnStop;
}
public Integer getNumwant() {
return numwant;
}
public Integer getNumwantOnStop() {
return numwantOnStop;
}
}

View file

@ -0,0 +1,63 @@
package org.araymond.joal.core.client.emulated.generator.numwant;
import org.junit.Test;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
/**
* Created by raymo on 19/07/2017.
*/
public class NumwantProviderTest {
@Test
public void shouldNotBuildWithoutNumwant() {
assertThatThrownBy(() -> new NumwantProvider(null, 0))
.isInstanceOf(NullPointerException.class)
.hasMessage("numwant must not be null.");
}
@Test
public void shouldNotBuildWithNumwantLessThanOne() {
assertThatThrownBy(() -> new NumwantProvider(0, 0))
.isInstanceOf(IllegalArgumentException.class)
.hasMessage("numwant must be at least 1.");
}
@Test
public void shouldBuildWithNumwantEqualsOne() {
final NumwantProvider numwantProvider = new NumwantProvider(1, 0);
assertThat(numwantProvider.getNumwant()).isEqualTo(1);
}
@Test
public void shouldNotBuildWithoutNumwantOnStop() {
assertThatThrownBy(() -> new NumwantProvider(200, null))
.isInstanceOf(NullPointerException.class)
.hasMessage("numwantOnStop must not be null.");
}
@Test
public void shouldNotBuildWithNumwantOnStopLessThanZero() {
assertThatThrownBy(() -> new NumwantProvider(200, -1))
.isInstanceOf(IllegalArgumentException.class)
.hasMessage("numwantOnStop must be at least 0.");
}
@Test
public void shouldBuildWithNumwantOnStopEqualsZero() {
final NumwantProvider numwantProvider = new NumwantProvider(200, 0);
assertThat(numwantProvider.getNumwantOnStop()).isEqualTo(0);
}
@Test
public void shouldBuild() {
final NumwantProvider numwantProvider = new NumwantProvider(200, 0);
assertThat(numwantProvider.getNumwant()).isEqualTo(200);
assertThat(numwantProvider.getNumwantOnStop()).isEqualTo(0);
}
}