Permutation { public int get(int index) { return this.values[index]; } Permutation(int size);  Permutation(int... values);  Permutation(Permutation other); @Override boolean equals(Object other); @Override int hashCode(); boolean isIdentity(); int size(); int get(int index); int[] getValues(); int firstIndexOfDifference(Permutation other); List<Integer> getOrbit(int element); void set(int index, int value); void setTo(Permutation other); Permutation multiply(Permutation other); Permutation invert(); String toCycleString(); @Override String toString();  }
@Test public void sizeNConstructor() { int size = 4; Permutation p = new Permutation(size); for (int index = 0; index < size; index++) { Assert.assertEquals(index, p.get(index)); } }
@Test public void getTest() { Permutation p = new Permutation(1, 0); Assert.assertEquals(1, p.get(0)); }