added tests and fixed soap service