Suki Waterhouse is "shocked" she's still "so happy" with Robert Pattinson after almost five years together.