soajs.controller 4.3.16 → 4.3.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/mw/mt/lib.js +2 -2
- package/package.json +2 -2
- package/test/unit/mw/mt/lib.js +22 -0
package/mw/mt/lib.js
CHANGED
|
@@ -45,7 +45,7 @@ module.exports = {
|
|
|
45
45
|
async.eachOfSeries(service, function (version, versionValue, versionCall) {
|
|
46
46
|
if (!acl.acl[serviceName][versionValue]) {
|
|
47
47
|
acl.acl[serviceName][versionValue] = _.cloneDeep(version);
|
|
48
|
-
return
|
|
48
|
+
return versionCall();
|
|
49
49
|
}
|
|
50
50
|
if (version.apisPermission === "restricted") {
|
|
51
51
|
if (acl.acl[serviceName] && acl.acl[serviceName][versionValue] && acl.acl[serviceName][versionValue].apisPermission && acl.acl[serviceName][versionValue].apisPermission === "restricted") {
|
|
@@ -89,7 +89,7 @@ module.exports = {
|
|
|
89
89
|
async.eachOf(service, function (version, versionValue, versionCall) {
|
|
90
90
|
if (!acl.acl_all_env[envName][serviceName][versionValue]) {
|
|
91
91
|
acl.acl_all_env[envName][serviceName][versionValue] = _.cloneDeep(version);
|
|
92
|
-
return
|
|
92
|
+
return versionCall();
|
|
93
93
|
}
|
|
94
94
|
if (version.apisPermission === "restricted") {
|
|
95
95
|
if (acl.acl_all_env[envName][serviceName][versionValue].apisPermission && acl.acl_all_env[envName][serviceName][versionValue].apisPermission === "restricted") {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "soajs.controller",
|
|
3
3
|
"description": "soajs multi tenant API gateway",
|
|
4
|
-
"version": "4.3.
|
|
4
|
+
"version": "4.3.17",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "soajs team",
|
|
7
7
|
"email": "team@soajs.org"
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"path-to-regexp": "8.4.2",
|
|
31
31
|
"soajs.core.libs": "1.2.2",
|
|
32
32
|
"soajs.core.modules": "5.2.21",
|
|
33
|
-
"soajs.urac.driver": "3.2.
|
|
33
|
+
"soajs.urac.driver": "3.2.18",
|
|
34
34
|
"useragent": "2.3.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
package/test/unit/mw/mt/lib.js
CHANGED
|
@@ -804,6 +804,28 @@ describe("Unit test for: mw - mt lib", () => {
|
|
|
804
804
|
done();
|
|
805
805
|
});
|
|
806
806
|
});
|
|
807
|
+
it("testing mergeACLArray keeps every new version of a service", (done) => {
|
|
808
|
+
let acl = [
|
|
809
|
+
{ "acl": { "orders": { "1": { "access": true } } } },
|
|
810
|
+
{ "acl": { "orders": { "2": { "access": true }, "3": { "access": false } }, "billing": { "1": { "access": true } } } }
|
|
811
|
+
];
|
|
812
|
+
lib.mergeACLArray(acl, (err, result) => {
|
|
813
|
+
assert.deepStrictEqual(Object.keys(result.acl.orders).sort(), ["1", "2", "3"]);
|
|
814
|
+
assert.deepStrictEqual(result.acl.orders["3"], { "access": false });
|
|
815
|
+
assert.ok(result.acl.billing["1"]);
|
|
816
|
+
done();
|
|
817
|
+
});
|
|
818
|
+
});
|
|
819
|
+
it("testing mergeACLArray all env with several new versions of a service", (done) => {
|
|
820
|
+
let acl = [
|
|
821
|
+
{ "acl_all_env": { "dev": { "orders": { "1": { "access": true } } } } },
|
|
822
|
+
{ "acl_all_env": { "dev": { "orders": { "2": { "access": true }, "3": { "access": false } } } } }
|
|
823
|
+
];
|
|
824
|
+
lib.mergeACLArray(acl, (err, result) => {
|
|
825
|
+
assert.deepStrictEqual(Object.keys(result.acl_all_env.dev.orders).sort(), ["1", "2", "3"]);
|
|
826
|
+
done();
|
|
827
|
+
});
|
|
828
|
+
});
|
|
807
829
|
it("testing mergeACLArray empty array", (done) => {
|
|
808
830
|
let acl = [];
|
|
809
831
|
lib.mergeACLArray(acl, (err, result) => {
|