England took complete control of the second Investec Test against Sri Lanka as Moeen Ali hit a brilliant unbeaten 155.

Having been dropped on 36 early in the morning session Ali took full advantage and kept the runs coming until England declared on 498-9 in the afternoon session. At that point the bowlers did an excellent job of reducing Sri Lanka to 91-8, 407 behind, and Chris Woakes took 3-9 in seven overs.

England had some good luck with both Ali and Woakes getting early lifelines. First Ali sent a thick edge to Dimuth Karunaratne at gully off the bowling of Nuwan Pradeep and then a regulation edge from Woakes was completely missed by Dinesh Chandimal behind the stumps.

The pair went on to make Sri Lanka pay for their slackness in the field and had put 92 for seventh wicket, Ali going past 50, before Woakes was caught behind by Suranga Lakmal. Broad followed and Ali continued to perform with England reaching lunch at 408-8.

Having worked his way through the nineties Ali completed his second Test century with a drive over mid-off for four and continued in a very similar way from there on.

It wasn’t long before Ali launched Lakmal for six over midwicket to his 150 runs and the declaration came soon after with England just two runs short of 500.

Sri Lanka’s openers only had half an hour to get through before the next break but they were unable to see it through with Anderson bowling Karunaratne behind his legs. Kaushal Silva and Kusal Mendis performed well after the break but a good low catch from Jonny Bairstow broke their 34 run stand after Broad found Silva’s edge.

The teams meet for the third day later on Sunday but Sri Lanka’s chances of a turnaround seem particularly slim.