added more unit testing for a bit better code coverage. backup is tested well, except for trivial functions and component functions