Skip to content

Commit 255a197

Browse files
committed
Add test on applytoHTTPSOptions
1 parent a2c68d6 commit 255a197

File tree

3 files changed

+37
-17
lines changed

3 files changed

+37
-17
lines changed

node-client/src/config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ export class KubeConfig {
169169
this.applyAuthorizationHeader(opts);
170170
}
171171

172-
public applytoHTTPsOptions(opts: https.RequestOptions) {
172+
public applytoHTTPSOptions(opts: https.RequestOptions) {
173173
const user = this.getCurrentUser();
174174

175175
this.applyOptions(opts);

node-client/src/config_test.ts

Lines changed: 28 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
1-
import { KubeConfig, Config } from './config';
2-
import { expect } from 'chai';
31
import 'mocha';
42

3+
import { expect } from 'chai';
4+
import * as https from 'https';
5+
import * as base64 from 'base-64';
6+
7+
import { KubeConfig, Config } from './config';
8+
59
const kcFileName = "testdata/kubeconfig.yaml";
610

711
describe("Config", () => {
@@ -51,22 +55,22 @@ describe("KubeConfig", () => {
5155
let cluster1 = kc.clusters[0];
5256
let cluster2 = kc.clusters[1];
5357
expect(cluster1.name).to.equal("cluster1");
54-
expect(cluster1.caData).to.equal("CADATA");
58+
expect(cluster1.caData).to.equal("Q0FEQVRB");
5559
expect(cluster1.server).to.equal("http://example.com");
5660
expect(cluster2.name).to.equal("cluster2");
57-
expect(cluster2.caData).to.equal("CADATA2");
61+
expect(cluster2.caData).to.equal("Q0FEQVRBMg==");
5862
expect(cluster2.server).to.equal("http://example2.com");
5963

6064
// check users
6165
expect(kc.users.length).to.equal(2);
6266
let user1 = kc.users[0];
6367
let user2 = kc.users[1];
6468
expect(user1.name).to.equal("user1");
65-
expect(user1.certData).to.equal("USER_CADATA");
66-
expect(user1.keyData).to.equal("USER_CKDATA");
69+
expect(user1.certData).to.equal("VVNFUl9DQURBVEE=");
70+
expect(user1.keyData).to.equal("VVNFUl9DS0RBVEE=");
6771
expect(user2.name).to.equal("user2");
68-
expect(user2.certData).to.equal("USER2_CADATA");
69-
expect(user2.keyData).to.equal("USER2_CKDATA");
72+
expect(user2.certData).to.equal("VVNFUjJfQ0FEQVRB");
73+
expect(user2.keyData).to.equal("VVNFUjJfQ0tEQVRB");
7074

7175
// check contexts
7276
expect(kc.contexts.length).to.equal(2);
@@ -87,4 +91,20 @@ describe("KubeConfig", () => {
8791
// expect(kc.loadFromFile("missing.yaml")).to.throw();
8892
});
8993
});
94+
95+
describe("applyHTTPSOptions", () => {
96+
it("should apply cert configs", () => {
97+
const kc = new KubeConfig();
98+
kc.loadFromFile(kcFileName);
99+
100+
const opts: https.RequestOptions = {};
101+
kc.applytoHTTPSOptions(opts);
102+
103+
expect(opts).to.deep.equal({
104+
ca: new Buffer('CADATA2', 'utf-8'),
105+
cert: new Buffer('USER2_CADATA', 'utf-8'),
106+
key: new Buffer('USER2_CKDATA', 'utf-8'),
107+
});
108+
});
109+
});
90110
});

node-client/testdata/kubeconfig.yaml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
apiVersion: v1
22
clusters:
33
- cluster:
4-
certificate-authority-data: CADATA
4+
certificate-authority-data: Q0FEQVRB
55
server: http://example.com
66
name: cluster1
77
- cluster:
8-
certificate-authority-data: CADATA2
8+
certificate-authority-data: Q0FEQVRBMg==
99
server: http://example2.com
1010
name: cluster2
1111

1212
contexts:
1313
- context:
1414
cluster: cluster1
15-
user: user1
15+
user: user1
1616
name: context1
1717
- context:
1818
cluster: cluster2
@@ -23,11 +23,11 @@ current-context: context2
2323
kind: Config
2424
preferences: {}
2525
users:
26-
- name: user1
26+
- name: user1
2727
user:
28-
client-certificate-data: USER_CADATA
29-
client-key-data: USER_CKDATA
28+
client-certificate-data: VVNFUl9DQURBVEE=
29+
client-key-data: VVNFUl9DS0RBVEE=
3030
- name: user2
3131
user:
32-
client-certificate-data: USER2_CADATA
33-
client-key-data: USER2_CKDATA
32+
client-certificate-data: VVNFUjJfQ0FEQVRB
33+
client-key-data: VVNFUjJfQ0tEQVRB

0 commit comments

Comments
 (0)