1.0 Direct Testing, no starting at Parameter
* The indexOf String "Hello" is 0
* The indexOf String "Hi" is 1
* The indexOf Boolean 'true' is 2
* The indexOf Number '5' is 3
* The indexOf Number '9' is 5

2.0 A firstIndex parameter of 1 (positive offset test)
* The indexOf String "Hi" is 1
* The indexOf Boolean 'true' is 2
* The indexOf Number 5 is 3
* The indexOf Number 9 is 5

3.0 A firstIndex parameter of -4 (negative offset test)
* The indexOf String "Hi" is -1
* The indexOf Boolean 'true' is -1
* The indexOf Number 5 is 4
* The indexOf Number 9 is 5

4.0 A big positive firstIndex of 1000, to test the firstIndex > length
* The indexOf Number '9' is -1

5.0 A big positive firstIndex of 4294967301, to test when firstIndex > width of int (32-bits)
* The indexOf Boolean 'true' is -1

6.0 No arguments
* No arguments passed: 7
* No arguments passed: -1

7.0 Looking for null
* The indexOf null is 6
* The indexOf null is -1

8.0 Extra arguments
* The indexOf String "Hello" is 0

9.0 NaN firstIndex
* The indexOf String "Hi" is 0

10.0 Small firstIndex
* The indexOf Boolean 'true' is 2

11.0 Negative firstIndex bigger than the length of the array
* The indexOf Boolean 'true' is 2

12.0 Negative firstIndex bigger than 32-bits
* The indexOf Boolean 'true' is 2

13.0 Looking for undefined
* The indexOf undefined is 7
* The indexOf undefined is -1
* The indexOf undefined is 3
* The indexOf undefined is -1
* The indexOf undefined is -1

14.0 Object using the Array prototype
* The indexOf String "Hello" is 0
* The indexOf String "Hi" is 1
* The indexOf Boolean 'true' is 2
* The indexOf Number '5' is 3
* The indexOf Number '9' is 5
