concat_bytes.rs 881 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #![allow(
  2. unused_crate_dependencies,
  3. clippy::min_ident_chars,
  4. clippy::tests_outside_test_module
  5. )]
  6. use libthreema_macros::concat_fixed_bytes;
  7. #[test]
  8. fn test_correct() {
  9. let a = [1_u8; 4];
  10. let b = [2_u8; 3];
  11. let c = [3_u8; 3];
  12. {
  13. #[allow(clippy::empty_structs_with_brackets)]
  14. let result: [u8; 0] = concat_fixed_bytes!();
  15. assert_eq!(result, [] as [u8; 0]);
  16. }
  17. {
  18. let result: [u8; 4] = concat_fixed_bytes!(a);
  19. assert_eq!(result, [1, 1, 1, 1]);
  20. }
  21. {
  22. let result: [u8; 7] = concat_fixed_bytes!(a, b);
  23. assert_eq!(result, [1, 1, 1, 1, 2, 2, 2]);
  24. }
  25. {
  26. let result: [u8; 10] = concat_fixed_bytes!(a, b, c);
  27. assert_eq!(result, [1, 1, 1, 1, 2, 2, 2, 3, 3, 3]);
  28. }
  29. }
  30. #[test]
  31. fn compile_failures() {
  32. trybuild::TestCases::new().compile_fail("tests/fail/*.rs");
  33. }