Groovy web console

subscribe to the feed Subscribe
to this
site

Compare cypress-cutoff

Published 2 months ago by Anonymous
Actions Execute script  ▶ Edit in console Back to console Show/hide line numbers View recent scripts
def getLatestVersion(List versions) {
    def sortedVersions = versions.sort(false) { a, b ->
        List verA = a.tokenize('.')
        List verB = b.tokenize('.')
 
        def commonIndex = Math.min(verA.size(), verB.size())
        for (int i = 0; i < commonIndex; i++) {
            def numA = verA[i].toInteger()
            def numB = verB[i].toInteger()
            if (numA != numB) {
                return numA <=> numB
            }
        }
    verA.size() <=> verB.size()
    }
    return sortedVersions[-1]
}

// Last version before swap to js config
cypressCutOffVersion = "9.7.0"

// Lower version (returns cutoff version because it's higher => cypress.json)
lowerV = ["8.0.0", cypressCutOffVersion]
vers1 = "${getLatestVersion(lowerV)}"
println "Lower Version Passed: ${vers1 == cypressCutOffVersion ? 'cypress.json' : 'cypress.config.js'}"

matchingV = [cypressCutOffVersion, cypressCutOffVersion]
vers2 = "${getLatestVersion(lowerV)}"
println "Matching Version Passed: ${vers2 == cypressCutOffVersion ? 'cypress.json' : 'cypress.config.js'}"

higherV = ["10.0.1", cypressCutOffVersion]
vers3 = "${getLatestVersion(higherV)}"
println "Higher Version Passed: ${vers3 == cypressCutOffVersion ? 'cypress.json' : 'cypress.config.js'}"