Skip to main content

countries_iso3166/
lib.rs

1#![forbid(unsafe_code)]
2#![doc = include_str!("../README.md")]
3#![no_std]
4
5mod iso_3166_1;
6pub use iso_3166_1::*;
7
8#[cfg(test)]
9mod sanity_checks {
10    use crate::*;
11    #[test]
12    fn no_special_characters() {
13        {
14            let country = "Kenya";
15            let country_code_iso_31661: CountryIso31661 = country.into();
16
17            let into_str: &str = country_code_iso_31661.into();
18            assert_eq!(into_str, country);
19
20            assert_eq!(country_code_iso_31661, CountryIso31661::KE);
21        }
22
23        {
24            let country: &str = "Mauritius";
25            let country_code_iso_31661: CountryIso31661 = country.into();
26
27            let into_str: &str = country_code_iso_31661.into();
28            assert_eq!(into_str, country);
29
30            assert_eq!(country_code_iso_31661, CountryIso31661::MU);
31        }
32
33        {
34            let country = "Afghanistan";
35            let code: CountryIso31661 = country.into();
36            assert!(code == CountryIso31661::AF)
37        }
38
39        {
40            let country = "AF";
41            let code: CountryIso31661 = country.into();
42            assert!(code == CountryIso31661::AF)
43        }
44    }
45
46    #[test]
47    fn with_special_characters() {
48        {
49            let country = "Virgin Islands, U.S.";
50            let country_code_iso_31661: CountryIso31661 = country.into();
51
52            let into_str: &str = country_code_iso_31661.into();
53            assert_eq!(into_str, country);
54
55            assert_eq!(country_code_iso_31661, CountryIso31661::VI);
56        }
57
58        {
59            let country = "Cocos (Keeling) Islands";
60            let country_code_iso_31661: CountryIso31661 = country.into();
61
62            let into_str: &str = country_code_iso_31661.into();
63            assert_eq!(into_str, country);
64
65            assert_eq!(country_code_iso_31661, CountryIso31661::CC);
66        }
67
68        {
69            let country = "Côte d'Ivoire";
70            let country_code_iso_31661: CountryIso31661 = country.into();
71
72            let into_str: &str = country_code_iso_31661.into();
73            assert_eq!(into_str, country);
74
75            assert_eq!(country_code_iso_31661, CountryIso31661::CI);
76        }
77
78        {
79            let country = "Timor-Leste";
80            let country_code_iso_31661: CountryIso31661 = country.into();
81
82            let into_str: &str = country_code_iso_31661.into();
83            assert_eq!(into_str, country);
84
85            assert_eq!(country_code_iso_31661, CountryIso31661::TL);
86        }
87    }
88}