Unverified Commit 70bc3340 authored by Russell Cohen's avatar Russell Cohen Committed by GitHub
Browse files

Fix notable releases calculation for canary runner (#2492)

* Fix notable releases calculation for canary runner

* Fix test
parent 7d754971
Loading
Loading
Loading
Loading
+39 −2
Original line number Diff line number Diff line
@@ -115,9 +115,13 @@ enum CrateSource {
fn enabled_features(crate_source: &CrateSource) -> Vec<String> {
    let mut enabled = Vec::new();
    if let CrateSource::VersionsManifest { release_tag, .. } = crate_source {
        // we want to select the newest module specified after this release
        for notable in NOTABLE_SDK_RELEASE_TAGS.iter() {
            if notable <= release_tag {
            tracing::debug!(release_tag = ?release_tag, notable = ?notable, "considering if release tag came before notable release");
            if release_tag <= notable {
                tracing::debug!("selecting {} as chosen release", notable);
                enabled.push(notable.as_str().into());
                break;
            }
        }
    }
@@ -502,7 +506,7 @@ aws-sdk-transcribestreaming = "0.16.0"
[features]
latest = []
"release-2023-01-26" = []
default = ["release-2023-01-26"]
default = ["latest"]
"#,
            generate_crate_manifest(CrateSource::VersionsManifest {
                versions: VersionsManifest {
@@ -562,4 +566,37 @@ default = ["release-2023-01-26"]
            .unwrap(),
        );
    }

    #[test]
    fn test_notable_versions() {
        let versions = VersionsManifest {
            smithy_rs_revision: "some-revision-smithy-rs".into(),
            aws_doc_sdk_examples_revision: "some-revision-docs".into(),
            manual_interventions: Default::default(),
            crates: [].into_iter().collect(),
            release: None,
        };
        assert_eq!(
            enabled_features(&CrateSource::VersionsManifest {
                versions: versions.clone(),
                release_tag: "release-2023-02-23".parse().unwrap(),
            }),
            vec!["latest".to_string()]
        );

        assert_eq!(
            enabled_features(&CrateSource::VersionsManifest {
                versions: versions.clone(),
                release_tag: "release-2023-01-26".parse().unwrap(),
            }),
            vec!["release-2023-01-26".to_string()]
        );
        assert_eq!(
            enabled_features(&CrateSource::VersionsManifest {
                versions,
                release_tag: "release-2023-01-13".parse().unwrap(),
            }),
            vec!["release-2023-01-26".to_string()]
        );
    }
}