Added more tests; Added optional params and added tests for them, with the exception of selection-made class.