add promise A+ 2.1.2 test cases
refactoring