@Test(dataProvider = "intVectorData")
public void ofIntVector(final IntRange domain, final int length) {

	final Codec<int[], IntegerGene> codec = Codecs.ofVector(domain, length);
	final Genotype<IntegerGene> gt = codec.encoding().newInstance();
	assertEquals(gt.length(), 1);
	assertEquals(gt.chromosome().length(), length);
	for (IntegerGene gene : gt.chromosome()) {
		assertEquals(gene.min().intValue(), domain.min());
		assertEquals(gene.max().intValue(), domain.max());
	}
	final Function<Genotype<IntegerGene>, int[]> f = codec.decoder();
	final int[] value = f.apply(gt);
	assertEquals(value.length, length);
	for (int i = 0; i < length; ++i) {
		assertEquals(gt.get(0).get(i).intValue(), value[i]);
	}
}