/src/test/ui-fulldeps/fluent-messages/test.rs

https://gitlab.com/rust-lang/rust · Rust · 66 lines · 42 code · 15 blank · 9 comment · 0 complexity · e09659dc33e0e2225c080287315182bd MD5 · raw file

  1. // normalize-stderr-test "note.*" -> "note: os-specific message"
  2. #![feature(rustc_private)]
  3. #![crate_type = "lib"]
  4. extern crate rustc_macros;
  5. use rustc_macros::fluent_messages;
  6. /// Copy of the relevant `DiagnosticMessage` variant constructed by `fluent_messages` as it
  7. /// expects `crate::DiagnosticMessage` to exist.
  8. pub enum DiagnosticMessage {
  9. FluentIdentifier(std::borrow::Cow<'static, str>, Option<std::borrow::Cow<'static, str>>),
  10. }
  11. /// Copy of the relevant `SubdiagnosticMessage` variant constructed by `fluent_messages` as it
  12. /// expects `crate::SubdiagnosticMessage` to exist.
  13. pub enum SubdiagnosticMessage {
  14. FluentAttr(std::borrow::Cow<'static, str>),
  15. }
  16. mod missing_absolute {
  17. use super::fluent_messages;
  18. fluent_messages! {
  19. missing_absolute => "/definitely_does_not_exist.ftl",
  20. //~^ ERROR could not open Fluent resource
  21. }
  22. }
  23. mod missing_relative {
  24. use super::fluent_messages;
  25. fluent_messages! {
  26. missing_relative => "../definitely_does_not_exist.ftl",
  27. //~^ ERROR could not open Fluent resource
  28. }
  29. }
  30. mod missing_message {
  31. use super::fluent_messages;
  32. fluent_messages! {
  33. missing_message => "./missing-message.ftl",
  34. //~^ ERROR could not parse Fluent resource
  35. }
  36. }
  37. mod duplicate {
  38. use super::fluent_messages;
  39. fluent_messages! {
  40. a => "./duplicate-a.ftl",
  41. b => "./duplicate-b.ftl",
  42. //~^ ERROR overrides existing message: `key`
  43. }
  44. }
  45. mod valid {
  46. use super::fluent_messages;
  47. fluent_messages! {
  48. valid => "./valid.ftl",
  49. }
  50. use self::fluent_generated::{DEFAULT_LOCALE_RESOURCES, valid::valid};
  51. }