refactor the functional unit tests

Conflicts:
	composer.json
	composer.lock
refactor the functional tests