Emmanuel Macron and Marine Le Pen will face each other in a second round of the French presidential election on Sunday.