Hamilton Masakadza scored a run-a-ball century as Zimbabwe stunned Sri Lanka with a comprehensive seven-wicket victory in a World Cup warm-up at Bert Sutcliffe Oval on Wednesday.
It was a second defeat in warm up matches for the Sri Lankans, who reached the final of the last two World Cups and arrived Down Under with hopes of a second title to go with their 1996 triumph.
Masakadza, who finished 117 not out, shared an unbroken fourth wicket partnership of 119 with Sean Williams (51) to chase down the target of 280 and claim a morale boosting victory in the university town of Lincoln, southwest of Christchurch.
All rounder Masakadza has been playing international cricket for 14 years but has never before represented his country at a World Cup, with injury and loss of form ruling him out of previous tournaments.
On Wednesday, though, he showed he was in fine form for his maiden campaign when he outshone Sri Lankan batting stalwarts Kumar Sangakkara and Mahela Jayawardene with his biggest score outside Zimbabwe.
The 31 year old reached the milestone with a single off spinner Rangana Herath in the 41st over of the innings before ushering his country to victory with just under five overs to spare.
Masakadza hit his 117 off 119 balls with eight fours and three sixes but it was Williams who scored the winning runs with the four, his seventh, that brought up his half century.
Sri Lanka won the toss and elected to bat but while plenty of their batsmen got starts, only Dimuth Karunaratne (58) and all rounder Jeevan Mendis (51) managing to get to the half century mark and 279 for six was not an imposing score.
Left-arm spinner Williams (3-35) was the pick of the nine bowlers used by Zimbabwe, who open the tournament proper against neighbours South Africa in Hamilton on Sunday.
Sri Lanka will have to pick themselves up for a meeting with co-hosts New Zealand in Christchurch on Saturday in the opening match of the tournament.