consul/ui/packages/consul-ui/tests/helpers/set-cookies.js

70 lines
1.6 KiB
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
export default function (type, value, doc = document) {
const obj = {};
if (type !== '*') {
let key = '';
if (!doc.cookie.includes('CONSUL_ACLS_ENABLE=0')) {
obj['CONSUL_ACLS_ENABLE'] = 1;
}
if (!doc.cookie.includes('CONSUL_PEERINGS_ENABLE=0')) {
obj['CONSUL_PEERINGS_ENABLE'] = 1;
}
switch (type) {
case 'dc':
key = 'CONSUL_DATACENTER_COUNT';
break;
case 'service':
key = 'CONSUL_SERVICE_COUNT';
break;
case 'node':
case 'instance':
key = 'CONSUL_NODE_COUNT';
break;
case 'proxy':
key = 'CONSUL_PROXY_COUNT';
break;
case 'kv':
key = 'CONSUL_KV_COUNT';
break;
case 'acl':
key = 'CONSUL_ACL_COUNT';
break;
case 'session':
key = 'CONSUL_SESSION_COUNT';
break;
case 'intention':
key = 'CONSUL_INTENTION_COUNT';
break;
case 'policy':
key = 'CONSUL_POLICY_COUNT';
break;
case 'role':
key = 'CONSUL_ROLE_COUNT';
break;
case 'token':
key = 'CONSUL_TOKEN_COUNT';
break;
case 'authMethod':
key = 'CONSUL_AUTH_METHOD_COUNT';
break;
case 'oidcProvider':
key = 'CONSUL_OIDC_PROVIDER_COUNT';
break;
case 'nspace':
key = 'CONSUL_NSPACE_COUNT';
break;
case 'peer':
key = 'CONSUL_PEER_COUNT';
break;
}
if (key) {
obj[key] = value;
}
}
return obj;
}