message: Add more lexer tests
  Summary: Corner cases that weren't covered.
diff: @@ -384,6 +384,27 @@ fn test_escape_newline() {
  );
  }
  +#[test]
  +fn test_lexer_multiline_triple() {
  + let r = collect_result(
  + r#"
  +cmd = """A \
  + B \
  + C \
  + """"#,
  + );
  + assert_eq!(
  + &[
  + Token::Newline,
  + Token::Identifier("cmd".to_owned()),
  + Token::Equal,
  + Token::StringLiteral("A B C ".to_owned()),
  + Token::Newline,
  + ],
  + &r[..]
  + );
  +}
  +
  #[test]
  fn test_span() {
  let expected = vec![
  @@ -423,6 +444,24 @@ test("abc")
  assert_eq!(expected, actual);
  }
  +#[test]
  +fn test_lexer_final_comment() {
  + let r = collect_result(
  + r#"
  +x
  +# test"#,
  + );
  + assert_eq!(
  + &[
  + Token::Newline,
  + Token::Identifier("x".to_owned()),
  + Token::Newline,
  + Token::Newline
  + ],
  + &r[..]
  + );
  +}
  +
  #[test]
  fn smoke_test() {
  let mut diagnostics = Vec::new();
  