starknet_core/
chain_id.rs

1use starknet_types_core::felt::Felt;
2
3/// The chain identifier for Starknet Mainnet. A Cairo short string encoding of `SN_MAIN`.
4pub const MAINNET: Felt = Felt::from_raw([
5    502562008147966918,
6    18446744073709551615,
7    18446744073709551615,
8    17696389056366564951,
9]);
10
11/// The chain identifier for Starknet Goerli. A Cairo short string encoding of `SN_GOERLI`.
12#[deprecated = "The Goerli testnet has been shutdown"]
13pub const TESTNET: Felt = Felt::from_raw([
14    398700013197595345,
15    18446744073709551615,
16    18446744073709548950,
17    3753493103916128178,
18]);
19
20/// The chain identifier for Starknet Goerli 2. A Cairo short string encoding of `SN_GOERLI2`.
21#[deprecated = "The Goerli testnet has been shutdown"]
22pub const TESTNET2: Felt = Felt::from_raw([
23    33650220878420990,
24    18446744073709551615,
25    18446744073708869172,
26    1663542769632127759,
27]);
28
29/// The chain identifier for Starknet Sepolia. A Cairo short string encoding of `SN_SEPOLIA`.
30pub const SEPOLIA: Felt = Felt::from_raw([
31    507980251676163170,
32    18446744073709551615,
33    18446744073708869172,
34    1555806712078248243,
35]);
36
37#[cfg(test)]
38mod test {
39    use crate::utils::cairo_short_string_to_felt;
40
41    use super::*;
42
43    #[test]
44    #[allow(deprecated)]
45    #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test::wasm_bindgen_test)]
46    fn test_chain_ids() {
47        for (text, felt) in [
48            ("SN_MAIN", MAINNET),
49            ("SN_GOERLI", TESTNET),
50            ("SN_GOERLI2", TESTNET2),
51            ("SN_SEPOLIA", SEPOLIA),
52        ] {
53            assert_eq!(cairo_short_string_to_felt(text).unwrap(), felt);
54        }
55    }
56}