Boris Johnson faces two crunch by-elections next week in a major test of his leadership that could come to define his remaining time in office, writes Bill Bowkett.