refactoring by test_using