use crate::*; use ethers_etherscan::utils::lookup_compiler_version; use semver::{BuildMetadata, Prerelease, Version}; #[tokio::test] async fn can_lookup_compiler_version_build_metadata() { let v = Version::new(0, 8, 13); let version = lookup_compiler_version(&v).await.unwrap(); assert_eq!(v.major, version.major); assert_eq!(v.minor, version.minor); assert_eq!(v.patch, version.patch); assert_ne!(version.build, BuildMetadata::EMPTY); assert_eq!(version.pre, Prerelease::EMPTY); } #[tokio::test] async fn errors_on_invalid_solc() { let v = Version::new(100, 0, 0); let err = lookup_compiler_version(&v).await.unwrap_err(); assert!(matches!(err, EtherscanError::MissingSolcVersion(_))); }