allowed for the mode to be specified in tests added 3 tests