// Test cases for AWS Secret Detection

// --- AWS Access Key ID ---

// True Positives (Should be flagged as AWS Access Key ID)
const validAkiaKey = "AKIAABCDEFGHIJKLMNOP"; // AKIA + 16 valid chars (A-Z, 2-7)
const validAsiaKey = "ASIAQRSTUVWXYZ234567"; // ASIA + 16 valid chars (A-Z, 2-7)
const realLookingAkia = "AKIAY34FZKBOKMUTVV7A"; // From blog post example
const realLookingAsia = "ASIAIOSFODNN7EXAMPLE"; // Common example structure

// False Positives (Should NOT be flagged as AWS Access Key ID)
const akiaInvalidChar = "AKIA0BCDEFGHIJKLMNOP"; // Contains '0'
const asiaInvalidChar = "ASIAMNO1QRSTUVWXYZ"; // Contains '1'
const akiaTooShort = "AKIAABCDE";         // Too short
const akiaTooLong = "AKIAABCDEFGHIJKLMNOPQ"; // Too long
const randomString20 = "THISISNOTANAWSKEYNOW";
const nonKeyStartingWithA = "AKIDINVALIDPREFIXNOW"; // Starts with A, but not AKIA/ASIA

// --- AWS Secret Access Key ---

// True Positives (Should be flagged as AWS Secret Access Key)
const validSecretKeyHighEntropy = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"; // 40 chars, high unique chars
const anotherValidSecretKey = "vNcXwB7KVmAGr+t73VbDoC5TzPqL1pQEXAMPLEKEY"; // 40 chars, high unique chars

// False Positives (Should NOT be flagged as AWS Secret Access Key)
const secretKeyLowEntropy = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; // 40 A's, low unique chars
const secretKeyLowEntropyMixed = "abababababababababababababababababababab"; // 40 'ab's, low unique chars
const secretKeySlightlyShort = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKE"; // 39 chars
const secretKeySlightlyLong = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY+"; // 41 chars
const notBase64Secret = "ThisIsNotABase64StringEvenIfItIs40Long!"; // Not base64 characters

// --- Combinations in realistic-looking (but fake) .env style content ---
// These are primarily to test the specific AWS patterns.
// The .env handling (downgrading to 'Info') is a separate mechanism.

AWS_ACCESS_KEY_ID_TRUE_1="AKIAIOSFODNN7EXAMPLE"
AWS_SECRET_ACCESS_KEY_TRUE_1="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"

AWS_ACCESS_KEY_ID_FALSE_CHAR="AKIA1234567890ABCDEF" 
AWS_SECRET_ACCESS_KEY_FALSE_LOW_ENTROPY="abababababababababababababababababababab"

// Edge case: Valid AWS Access Key ID format but part of a longer string (should not match if regex is anchored or specific)
// Our regex /(?:AKIA|ASIA)[A-Z2-7]{16}/g isn't strictly anchored but expects this exact pattern.
const someUrlParameter = "param=AKIAQRSTUVWXYZ234567&other=value";

// High entropy string that is NOT an AWS secret key
const otherHighEntropyString = "1aB2cD3eF4gH5iJ6kL7mN8oP9qR0sT1uV2wX3yZ40="; // 40 chars, base64-like, but not an AWS key 