MCPcopy Create free account
hub / github.com/bytebase/bytebase / TestObfuscate

Function TestObfuscate

backend/common/util_test.go:123–162  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

121}
122
123func TestObfuscate(t *testing.T) {
124 tests := []struct {
125 src string
126 seed string
127 dst string
128 }{
129 {
130 src: "",
131 seed: "01234567890123456789012345678901", // 32 bytes.
132 dst: "",
133 },
134 {
135 src: "hello",
136 seed: "01234567890123456789012345678901", // 32 bytes.
137 dst: "WFReX1s=",
138 },
139 {
140 src: "你好!",
141 seed: "ENuef1JjSvQ6VPfgrB33T2mkshhwRRjp", // 32 bytes.
142 dst: "ofPVgMOMaw==",
143 },
144 {
145 src: "Bytebase is a database tool for developers. Bytebase 是个数据库 DevOps 工具。",
146 seed: "01234567890123456789012345678901", // 32 bytes.
147 dst: "ckhGVlZURVIYUEMRUxNQVEJWWlhDVBJHW1paF15WQhFUVERWWFpGUkpKHhFwSkBQVFZLXBDXqpzQjZzRrYnWvJ7UiKAUcVNBd0lDEdeEkdCzgNu5sg==",
148 },
149 {
150 src: `{ "type": "service_account", "project_id": "spanner-test-371702", "private_key_id": "klsdjfklasjdfas\nklsdjaflkajefjlaksdjf\nlsajdfklsjaldkfjkasldjf\nD PRIVATE KEY-----\n, "client_email": "test-768@spanner-test-371702.iam.gserviceaccount.com", "client_id": "102052620181224568340", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/test-768%40spanner-test-371702.iam.gserviceaccount.com" }`,
151 seed: `aGgQpKjg7fuwNV6B31sIRQ1qm4Ttqw9s`, // 32 bytes.
152 dst: `GmdHcVI/ExdSRE9XbCVTMEVYECwNMFISAkE6AFNbGVNBZRcjHyEPBEM5HBNsbBZgQEESJzw0Q1wZUScAXEQOQlZ3VXNca0pHFRYHHjg3QidsWhYwDThVU1cUdh8dBF0ZBywLMAMhDgFWFSkZJTpFJllQFSU5MFsUC144FRoEXRkHGwk9AyoAA1ENGQQkN1omWFcZIjMiXRUHUggaNVdpISgRJgU1ayEibktYWmN7aiwfEVNpcDJdGAhaICsUGlgaDWVdcVI/DxRDS0JBdhZFMlJfHSwgfEUUHkB5R0ZGDkNTaQ4wHWUNFFIUAx4tM1chUF4GJyZ/Uh4AFnhUUVcbEA0uAj8EFAMDFVxVVX9mBHIGA0V7YmAJQF8GYEFHTwpHUWVLcVBrSAZCEh0oOyRfYAkRUSEmJUECVxt7FRIUVgYPMxR/FyQFAFsDWxQhOxktHF4SPCY5A14MQSAcU1sZU0FlEz4bLgQ4QhQcVXR2FCpHRQM6aH4eHgxBIBxDWV4cDiALNBE7AxQZBRoaYSJZKVZfUWVycRFTDEEgHC4HSxwXLgM0AhQSUgdfKhQrJEIdRkMfa2hxExkZQCQHS1gWBBYwSTYfJA0LUgcFHj14VS1eHhwoJyVZQ0JCZVsSEksHEmVLcVBrSARbDxAZOglOdwMILCo3I0UuGEY4VktXGxsVMxciSmRFEEARWxAhOVEuVlADICF/Uh4AGyYbExhNXBd2SDwVPwsDVhIUWDZjBnscRRY6JnwGR1URYEQCB1gdDyIVfAQuGRMaVUJGeWYEbFpQHmc1IlQDG103ERAUWhwUKRN/EyQHRRcb`,
153 },
154 }
155 for _, test := range tests {
156 obfuscated := Obfuscate(test.src, test.seed)
157 require.Equal(t, test.dst, obfuscated)
158 ubobfuscated, err := Unobfuscate(obfuscated, test.seed)
159 require.NoError(t, err)
160 require.Equal(t, test.src, ubobfuscated)
161 }
162}
163
164func TestNormalizeExternalURL(t *testing.T) {
165 tests := []struct {

Callers

nothing calls this directly

Calls 3

ObfuscateFunction · 0.85
UnobfuscateFunction · 0.85
EqualMethod · 0.65

Tested by

no test coverage detected