add testcase for ticket 3000
add string member functions
Merge remote-tracking branch 'origin/4.2' into 4.2