We start with the scorecard of the England-South Africa Test at Lord’s:
Moeen Ali achieved the double of a fifty and 10 wickets in the match.
Now, the standard definition of a good all-round performance in a Test is a century and a fiver. Cricinfo provides this as a direct link: http://stats.espncricinfo.com/ci/content/records/282793.html
There are 32 such instances at the time of writing.
The achievement of a fifty and 10wm is somewhat less common though the instances can be easily be got from Statsguru:
Fifty and 10 wickets in a Test (as on Jul 11, 2017)
27 entries here, the most recent entrants here being Moeen Ali, Ravindra Jadeja and Dilruwan Perera. Sir Richard Hadlee is the only one to do this 3 times. No one else has done it more than once.
Also note that Alan Davidson was the first to score a hundred runs and take 10 wickets in a match (though without a century). This was in the Brisbane tied Test of 1960. He held this record for over 19 years. It was not until 1980 that Botham became the first to score a century and take 10 wickets in a match. Imran repeated this a few years later and Shakib followed much later.
While the list of those who scored a century and 5wi is mostly populated by the better-known all-rounders ranging from Sobers to Botham to Ashwin, the second list has a few unexpected names. These include bowlers who were not considered recognized batsmen but somehow managed a fifty: e.g. JK Lever (on debut), Abdul Qadir, DW Steyn and PS de Villiers. Then there are non-regular bowlers (notably AR Border and MG Bevan) who were not regular bowlers but somehow managed a ten-wicket haul.
In several cases these were the only fifties or ten-fors the player achieved in their Test careers. The strangest case may be that of JK Lever, who is the only one to score a fifty and take ten wickets on his debut. He did not achieve either of these again in his 21-Test career.