Skip to content

Commit 19d27af

Browse files
author
Jagveer
committed
Test Cases
1 parent a711a57 commit 19d27af

File tree

8 files changed

+259
-56
lines changed

8 files changed

+259
-56
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
node_modules/*
22
samples/sample-app/node_modules/*
3-
.vscode
3+
.vscode
4+
dist

dist/imagekit.js

Lines changed: 105 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ var isObject = require('lodash/isObject');
125125
*/
126126
var errorMessages = require("../../constants/errorMessages");
127127
var respond = require("../../utils/respond");
128-
var request = require("../../utils/request");
128+
var request = require("../../utils/request").request;
129129

130130
module.exports = function(uploadOptions, defaultOptions, callback) {
131131
if(!isObject(uploadOptions)) {
@@ -3684,45 +3684,103 @@ module.exports = {
36843684
},{}],65:[function(require,module,exports){
36853685

36863686

3687-
module.exports = function(formData, defaultOptions, callback) {
3687+
// module.exports = function(formData, defaultOptions, callback) {
3688+
// var xhr = new XMLHttpRequest();
3689+
// xhr.open('GET', defaultOptions.authenticationEndpoint);
3690+
// xhr.onload = function() {
3691+
// if (xhr.status === 200) {
3692+
// try {
3693+
// var body = JSON.parse(xhr.responseText);
3694+
// formData.append("signature", body.signature || "");
3695+
// formData.append("expire", body.expire || 0);
3696+
// formData.append("token", body.token);
3697+
3698+
// var uploadFileXHR= new XMLHttpRequest();
3699+
// uploadFileXHR.open('POST', 'https://upload.imagekit.io/api/v1/files/upload');
3700+
// uploadFileXHR.onload = function() {
3701+
// if (uploadFileXHR.status === 200) {
3702+
// if(typeof callback != "function") return;
3703+
// var uploadResponse = JSON.parse(uploadFileXHR.responseText);
3704+
// callback(null, uploadResponse);
3705+
// }
3706+
// else if (uploadFileXHR.status !== 200) {
3707+
// if(typeof callback != "function") return;
3708+
// callback(JSON.parse(uploadFileXHR.responseText));
3709+
// }
3710+
// };
3711+
// uploadFileXHR.send(formData);
3712+
// } catch(ex) {
3713+
// console.log(ex);
3714+
// if(typeof callback != "function") return;
3715+
// callback(ex);
3716+
// }
3717+
// }
3718+
// else {
3719+
// try {
3720+
// var error = JSON.parse(xhr.responseText);
3721+
// console.log(error);
3722+
// if(typeof callback != "function") return;
3723+
// callback(error);
3724+
// } catch (ex) {
3725+
// console.log(ex);
3726+
// if(typeof callback != "function") return;
3727+
// callback(ex);
3728+
// }
3729+
// }
3730+
// };
3731+
// xhr.send();
3732+
// return;
3733+
// }
3734+
3735+
function request (formData, defaultOptions, callback) {
3736+
module.exports.generateSignatureToken(defaultOptions, function (err, signaturObj) {
3737+
if (err) {
3738+
console.log(err);
3739+
if(typeof callback != "function") return;
3740+
callback(err);
3741+
return;
3742+
} else {
3743+
formData.append("signature", signaturObj.signature || "");
3744+
formData.append("expire", signaturObj.expire || 0);
3745+
formData.append("token", signaturObj.token);
3746+
3747+
module.exports.uploadFile(formData, function(err, responseSucessText) {
3748+
if (err) {
3749+
console.log(error);
3750+
if(typeof callback != "function") return;
3751+
callback(error);
3752+
} else {
3753+
callback(null, responseSucessText);
3754+
}
3755+
});
3756+
}
3757+
});
3758+
}
3759+
3760+
function _generateSignatureToken(defaultOptions, callback) {
36883761
var xhr = new XMLHttpRequest();
36893762
xhr.open('GET', defaultOptions.authenticationEndpoint);
36903763
xhr.onload = function() {
36913764
if (xhr.status === 200) {
36923765
try {
36933766
var body = JSON.parse(xhr.responseText);
3694-
formData.append("signature", body.signature || "");
3695-
formData.append("expire", body.expire || 0);
3696-
formData.append("token", body.token);
3697-
3698-
var uploadFileXHR= new XMLHttpRequest();
3699-
uploadFileXHR.open('POST', 'https://upload.imagekit.io/api/v1/files/upload');
3700-
uploadFileXHR.onload = function() {
3701-
if (uploadFileXHR.status === 200) {
3702-
if(typeof callback != "function") return;
3703-
var uploadResponse = JSON.parse(uploadFileXHR.responseText);
3704-
callback(null, uploadResponse);
3705-
}
3706-
else if (uploadFileXHR.status !== 200) {
3707-
if(typeof callback != "function") return;
3708-
callback(JSON.parse(uploadFileXHR.responseText));
3709-
}
3710-
};
3711-
uploadFileXHR.send(formData);
3767+
var obj = {
3768+
signature: body.signature,
3769+
expire: body.expire,
3770+
token: body.token
3771+
}
3772+
callback(null, obj);
3773+
return;
37123774
} catch(ex) {
3713-
console.log(ex);
37143775
if(typeof callback != "function") return;
37153776
callback(ex);
37163777
}
3717-
}
3718-
else {
3778+
} else {
37193779
try {
37203780
var error = JSON.parse(xhr.responseText);
3721-
console.log(error);
37223781
if(typeof callback != "function") return;
37233782
callback(error);
37243783
} catch (ex) {
3725-
console.log(ex);
37263784
if(typeof callback != "function") return;
37273785
callback(ex);
37283786
}
@@ -3732,7 +3790,29 @@ module.exports = function(formData, defaultOptions, callback) {
37323790
return;
37333791
}
37343792

3793+
function _uploadFile (formData, callback) {
3794+
var uploadFileXHR= new XMLHttpRequest();
3795+
uploadFileXHR.open('POST', 'https://upload.imagekit.io/api/v1/files/upload');
3796+
uploadFileXHR.onload = function() {
3797+
if (uploadFileXHR.status === 200) {
3798+
if(typeof callback != "function") return;
3799+
var uploadResponse = JSON.parse(uploadFileXHR.responseText);
3800+
callback(null, uploadResponse);
3801+
}
3802+
else if (uploadFileXHR.status !== 200) {
3803+
if(typeof callback != "function") return;
3804+
callback(JSON.parse(uploadFileXHR.responseText));
3805+
}
3806+
};
3807+
uploadFileXHR.send(formData);
3808+
return
3809+
}
37353810

3811+
module.exports = {
3812+
request,
3813+
generateSignatureToken: _generateSignatureToken,
3814+
uploadFile: _uploadFile,
3815+
}
37363816
},{}],66:[function(require,module,exports){
37373817
module.exports = function(isError, response, callback) {
37383818
if(typeof callback == "function") {

libs/upload/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ var isObject = require('lodash/isObject');
55
*/
66
var errorMessages = require("../../constants/errorMessages");
77
var respond = require("../../utils/respond");
8-
var request = require("../../utils/request");
8+
var request = require("../../utils/request").request;
99

1010
module.exports = function(uploadOptions, defaultOptions, callback) {
1111
if(!isObject(uploadOptions)) {

package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,16 @@
99
},
1010
"devDependencies": {
1111
"chai": "^4.2.0",
12+
"formdata-node": "^2.1.1",
1213
"grunt": "^1.0.4",
1314
"grunt-browserify": "^5.3.0",
1415
"mocha": "^7.0.1",
1516
"sinon": "^8.1.1"
1617
},
1718
"scripts": {
18-
"test": "echo \"Error: no test specified\" && exit 1"
19+
"build": "yarn install && ./node_modules/.bin/grunt",
20+
"test": "yarn install && export NODE_ENV=test && ./node_modules/mocha/bin/mocha --exit -t 40000 test/*.js;ex=$? ; unset NODE_ENV ; exit $ex;",
21+
"startSampleApp": "yarn build && cd samples/sample-app/ && yarn install && node index.js"
1922
},
2023
"repository": {
2124
"type": "git",

samples/sample-app/.env

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
PRIVATE_KEY =
2-
PUBLIC_KEY =
3-
URL_ENDPOINT =
1+
PRIVATE_KEY = qqHhrm/7WtoRcMuIORD2+75uPOA=
2+
PUBLIC_KEY = 81shyFkcqoR/It6sCR1P845UtCY=
3+
URL_ENDPOINT = https://ik.imagekit.io/s11xanjcm/
44

55
SERVER_PORT = 3000

samples/sample-app/views/index.pug

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ html
1313
h4 Original Image
1414
p
1515
img(src="")
16-
div(id='transgit_image')
16+
div(id='trans_image')
1717
h4 Sample transformation with height: 300, width: 400:
1818
p
1919
img(src="")

utils/request.js

Lines changed: 105 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,102 @@
11

22

3-
module.exports = function(formData, defaultOptions, callback) {
3+
// module.exports = function(formData, defaultOptions, callback) {
4+
// var xhr = new XMLHttpRequest();
5+
// xhr.open('GET', defaultOptions.authenticationEndpoint);
6+
// xhr.onload = function() {
7+
// if (xhr.status === 200) {
8+
// try {
9+
// var body = JSON.parse(xhr.responseText);
10+
// formData.append("signature", body.signature || "");
11+
// formData.append("expire", body.expire || 0);
12+
// formData.append("token", body.token);
13+
14+
// var uploadFileXHR= new XMLHttpRequest();
15+
// uploadFileXHR.open('POST', 'https://upload.imagekit.io/api/v1/files/upload');
16+
// uploadFileXHR.onload = function() {
17+
// if (uploadFileXHR.status === 200) {
18+
// if(typeof callback != "function") return;
19+
// var uploadResponse = JSON.parse(uploadFileXHR.responseText);
20+
// callback(null, uploadResponse);
21+
// }
22+
// else if (uploadFileXHR.status !== 200) {
23+
// if(typeof callback != "function") return;
24+
// callback(JSON.parse(uploadFileXHR.responseText));
25+
// }
26+
// };
27+
// uploadFileXHR.send(formData);
28+
// } catch(ex) {
29+
// console.log(ex);
30+
// if(typeof callback != "function") return;
31+
// callback(ex);
32+
// }
33+
// }
34+
// else {
35+
// try {
36+
// var error = JSON.parse(xhr.responseText);
37+
// console.log(error);
38+
// if(typeof callback != "function") return;
39+
// callback(error);
40+
// } catch (ex) {
41+
// console.log(ex);
42+
// if(typeof callback != "function") return;
43+
// callback(ex);
44+
// }
45+
// }
46+
// };
47+
// xhr.send();
48+
// return;
49+
// }
50+
51+
function request (formData, defaultOptions, callback) {
52+
module.exports.generateSignatureToken(defaultOptions, function (err, signaturObj) {
53+
if (err) {
54+
console.log(err);
55+
if(typeof callback != "function") return;
56+
callback(err);
57+
return;
58+
} else {
59+
formData.append("signature", signaturObj.signature || "");
60+
formData.append("expire", signaturObj.expire || 0);
61+
formData.append("token", signaturObj.token);
62+
63+
module.exports.uploadFile(formData, function(err, responseSucessText) {
64+
if (err) {
65+
console.log(error);
66+
if(typeof callback != "function") return;
67+
callback(error);
68+
} else {
69+
callback(null, responseSucessText);
70+
}
71+
});
72+
}
73+
});
74+
}
75+
76+
function _generateSignatureToken(defaultOptions, callback) {
477
var xhr = new XMLHttpRequest();
578
xhr.open('GET', defaultOptions.authenticationEndpoint);
679
xhr.onload = function() {
780
if (xhr.status === 200) {
881
try {
982
var body = JSON.parse(xhr.responseText);
10-
formData.append("signature", body.signature || "");
11-
formData.append("expire", body.expire || 0);
12-
formData.append("token", body.token);
13-
14-
var uploadFileXHR= new XMLHttpRequest();
15-
uploadFileXHR.open('POST', 'https://upload.imagekit.io/api/v1/files/upload');
16-
uploadFileXHR.onload = function() {
17-
if (uploadFileXHR.status === 200) {
18-
if(typeof callback != "function") return;
19-
var uploadResponse = JSON.parse(uploadFileXHR.responseText);
20-
callback(null, uploadResponse);
21-
}
22-
else if (uploadFileXHR.status !== 200) {
23-
if(typeof callback != "function") return;
24-
callback(JSON.parse(uploadFileXHR.responseText));
25-
}
26-
};
27-
uploadFileXHR.send(formData);
83+
var obj = {
84+
signature: body.signature,
85+
expire: body.expire,
86+
token: body.token
87+
}
88+
callback(null, obj);
89+
return;
2890
} catch(ex) {
29-
console.log(ex);
3091
if(typeof callback != "function") return;
3192
callback(ex);
3293
}
33-
}
34-
else {
94+
} else {
3595
try {
3696
var error = JSON.parse(xhr.responseText);
37-
console.log(error);
3897
if(typeof callback != "function") return;
3998
callback(error);
4099
} catch (ex) {
41-
console.log(ex);
42100
if(typeof callback != "function") return;
43101
callback(ex);
44102
}
@@ -48,3 +106,26 @@ module.exports = function(formData, defaultOptions, callback) {
48106
return;
49107
}
50108

109+
function _uploadFile (formData, callback) {
110+
var uploadFileXHR= new XMLHttpRequest();
111+
uploadFileXHR.open('POST', 'https://upload.imagekit.io/api/v1/files/upload');
112+
uploadFileXHR.onload = function() {
113+
if (uploadFileXHR.status === 200) {
114+
if(typeof callback != "function") return;
115+
var uploadResponse = JSON.parse(uploadFileXHR.responseText);
116+
callback(null, uploadResponse);
117+
}
118+
else if (uploadFileXHR.status !== 200) {
119+
if(typeof callback != "function") return;
120+
callback(JSON.parse(uploadFileXHR.responseText));
121+
}
122+
};
123+
uploadFileXHR.send(formData);
124+
return
125+
}
126+
127+
module.exports = {
128+
request,
129+
generateSignatureToken: _generateSignatureToken,
130+
uploadFile: _uploadFile,
131+
}

0 commit comments

Comments
 (0)