import static org.junit.jupiter.api.Assertions.*;

import org.junit.jupiter.api.Test;

class ArrayStuffTest {

  @Test
  void testIsOdd() {
    assertTrue(ArrayStuff.isOdd(1));
    assertTrue(ArrayStuff.isOdd(101));
    assertTrue(ArrayStuff.isOdd(3));
    assertTrue(ArrayStuff.isOdd(-1));
    assertFalse(ArrayStuff.isOdd(0));
    assertFalse(ArrayStuff.isOdd(2));
    assertFalse(ArrayStuff.isOdd(-2));
    assertFalse(ArrayStuff.isOdd(-102));
  }

  @Test
  void testIndexOfFirstOdd() {
    /* this: */
    // int []A = {2, 4, 5, 6};
    // assertEquals(2, ArrayStuff.indexOfFirstOdd(A));
		
    /* is the same as: */
    assertEquals(2, ArrayStuff.indexOfFirstOdd(new int[]{2, 4, 5, 6}));
		
		
    assertEquals(1, ArrayStuff.indexOfFirstOdd(new int[]{0, 1, 2, 5}));
    assertEquals(-1, ArrayStuff.indexOfFirstOdd(new int[]{2, 4, 6, 8}));
    assertEquals(-1, ArrayStuff.indexOfFirstOdd(new int[]{}));
    assertEquals(0, ArrayStuff.indexOfFirstOdd(new int[]{-1, -2, -3}));
    assertEquals(0, ArrayStuff.indexOfFirstOdd(new int[]{1}));
    assertEquals(-1, ArrayStuff.indexOfFirstOdd(new int[]{2}));
  }
}
