Christchurch: 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.
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.
Brief scores
Sri Lanka - 279/8 (Karunaratne 58, Mendis 51, Williams 3-35)
Zimbabwe - 281/3 (Masakadza 117*, Taylor 63, Williams 51*)
Result - Zimbabwe won by 7 wickets