Commit 90de3834 authored by Rajeev's avatar Rajeev Committed by kochhar
Browse files

SB-2658 Content-Filtering

parent d85ac705
master dependabot/npm_and_yarn/src/async-2.6.4 dependabot/npm_and_yarn/src/decode-uri-component-0.2.2 dependabot/npm_and_yarn/src/flat-and-mocha-5.0.2 dependabot/npm_and_yarn/src/handlebars-4.7.7 dependabot/npm_and_yarn/src/jsonwebtoken-9.0.0 dependabot/npm_and_yarn/src/lodash-4.17.21 dependabot/npm_and_yarn/src/minimist-and-project-sunbird/telemetry-sdk-and-handlebars-and-mkdirp-1.2.8 release-3.6.0 release-4.3.0 release-4.8.0 release-5.2.0 release-5.3.0 release-5.6.0 release-6.0.0 v1.13.3 v1.13 v1.12 v1.11.1 v1.11 v1.10.1 v1.10 v1.9 v1.8.2 v1.8 v1.7.1 v1.7 tmp-testPR tmp-sunbird-bootcamp tmp-rjshrjndrn-patch-1 tmp-revert-118-testPR tmp-revert-110-logs tmp-revert-99-revert-98-revert-97-revert-96-rjshrjndrn-patch-1 tmp-revert-98-revert-97-revert-96-rjshrjndrn-patch-1 tmp-revert-97-revert-96-rjshrjndrn-patch-1 tmp-revert-96-rjshrjndrn-patch-1 tmp-release-sonarcloud tmp-release-2.6.0 tmp-release-2.3.0 tmp-release-2.1.1 tmp-release-2.1.0 tmp-release-2.1.0_pluginSearch tmp-release-2.0.0 tmp-release-1.15 tmp-release-1.14.3 tmp-release-1.14 tmp-release-1.14-sp3 tmp-release-1.8.3 tmp-refactored-dev-deploy tmp-master tmp-loadtest tmp-load-testing tmp-jenkins-test tmp-jenkins-pipeline tmp-final-variable-refac tmp-dial-assemble-api tmp-content-update-read tmp-circleci release-5.6.0_RC1 release-5.2.0_RC1 release-4.8.5_RC1 release-4.8.0_RC2 release-4.8.0_RC1 release-4.3.0_RC1 release-3.8.0_RC3 release-3.8.0_RC2 release-3.8.0_RC1 release-3.7.0_RC2 release-3.7.0_RC1 release-3.6.0_RC1 release-3.2.0_RC2 release-3.2.0_RC1 release-3.1.0 release-3.1.0_RC2 release-3.1.0_RC1 release-3.0.1_RC1 release-3.0.0 release-3.0.0_RC1 release-2.10.0 release-2.10.0_RC2 release-2.10.0_RC1 release-2.9.0_RC3 release-2.9.0_RC2 release-2.9.0_RC1 release-2.8.0 release-2.8.0_RC4 release-2.8.0_RC3 release-2.8.0_RC2 release-2.8.0_RC1 release-2.7.0 release-2.7.0_RC2 release-2.7.0_RC1 release-2.6.0 release-2.6.0_RC4 release-2.6.0_RC3 release-2.6.0_RC2 release-2.6.0_RC1 release-2.3.0 release-2.3.0_RC2 release-2.3.0_RC1 release-2.1.1_RC1 release-2.1.0_RC2 release-2.1.0_RC1 release-2.0.0 release-2.0.0_RC5 release-2.0.0_RC4 release-2.0.0_RC3 release-2.0.0_RC2 release-2.0.0_RC1 release-1.15.0 release-1.15_RC7 release-1.15_RC6 release-1.15_RC5 release-1.15_RC4 release-1.15_RC3 release-1.15_RC2 release-1.15_RC1 release-1.14.0
No related merge requests found
Showing with 53 additions and 19 deletions
+53 -19
......@@ -8,6 +8,7 @@ var TelemetryUtil = require('sb_telemetry_util')
var telemetry = new TelemetryUtil()
var fs = require('fs')
var configUtil = require('sb-config-util')
var _ = require('underscore')
// TODO below configuration should to be refactored in a seperate file
......@@ -165,7 +166,9 @@ function getFilterConfig () {
var allowedChannels = whiteListedChannelList ? whiteListedChannelList.split(',') : []
var blackListedChannels = blackListedChannelList ? blackListedChannelList.split(',') : []
var configString = {}
if (allowedChannels && allowedChannels.length > 0) {
if ((allowedChannels && allowedChannels.length > 0) && (blackListedChannels && blackListedChannels.length > 0)) {
configString = _.difference(allowedChannels, blackListedChannels)
} else if (allowedChannels && allowedChannels.length > 0) {
configString = allowedChannels
} else if (blackListedChannels && blackListedChannels.length > 0) {
configString = { 'ne': blackListedChannels }
......
......@@ -7,18 +7,21 @@
var frameworkCategoryInstanceService = require('../service/frameworkCategoryInstanceService')
var requestMiddleware = require('../middlewares/request.middleware')
var BASE_URL_V1_Framework_Category = '/v1/framework/category'
var baseUrl = '/v1/framework/category'
module.exports = function (app) {
app.route(BASE_URL_V1_Framework_Category + '/read/:categoryID')
app.route(baseUrl + '/read/:categoryID')
.get(requestMiddleware.createAndValidateRequestBody, frameworkCategoryInstanceService.getFrameworkCategoryInstance)
app.route(BASE_URL_V1_Framework_Category + '/search')
.post(requestMiddleware.createAndValidateRequestBody, frameworkCategoryInstanceService.frameworkCategoryInstanceSearch)
app.route(baseUrl + '/search')
.post(requestMiddleware.createAndValidateRequestBody, requestMiddleware.addChannelFilters,
frameworkCategoryInstanceService.frameworkCategoryInstanceSearch)
app.route(BASE_URL_V1_Framework_Category + '/create')
.post(requestMiddleware.createAndValidateRequestBody, frameworkCategoryInstanceService.frameworkCategoryInstanceCreate)
app.route(baseUrl + '/create')
.post(requestMiddleware.createAndValidateRequestBody,
frameworkCategoryInstanceService.frameworkCategoryInstanceCreate)
app.route(BASE_URL_V1_Framework_Category + '/update/:categoryID')
.patch(requestMiddleware.createAndValidateRequestBody, frameworkCategoryInstanceService.frameworkCategoryInstanceUpdate)
app.route(baseUrl + '/update/:categoryID')
.patch(requestMiddleware.createAndValidateRequestBody,
frameworkCategoryInstanceService.frameworkCategoryInstanceUpdate)
}
......@@ -7,18 +7,19 @@
var frameworkTermService = require('../service/frameworkTermService')
var requestMiddleware = require('../middlewares/request.middleware')
var BASE_URL_V1_Framework_Term = '/v1/framework/term'
var baseUrl = '/v1/framework/term'
module.exports = function (app) {
app.route(BASE_URL_V1_Framework_Term + '/read/:categoryID')
app.route(baseUrl + '/read/:categoryID')
.get(requestMiddleware.createAndValidateRequestBody, frameworkTermService.getFrameworkTerm)
app.route(BASE_URL_V1_Framework_Term + '/search')
.post(requestMiddleware.createAndValidateRequestBody, frameworkTermService.frameworkTermSearch)
app.route(baseUrl + '/search')
.post(requestMiddleware.createAndValidateRequestBody, requestMiddleware.addChannelFilters,
frameworkTermService.frameworkTermSearch)
app.route(BASE_URL_V1_Framework_Term + '/create')
app.route(baseUrl + '/create')
.post(requestMiddleware.createAndValidateRequestBody, frameworkTermService.frameworkTermCreate)
app.route(BASE_URL_V1_Framework_Term + '/update/:categoryID')
app.route(baseUrl + '/update/:categoryID')
.patch(requestMiddleware.createAndValidateRequestBody, frameworkTermService.frameworkTermUpdate)
}
var server = require('../app.js')
var configUtil = require('../libs/sb-config-util')
var _ = require('underscore')
var request = require('request')
var host = 'http://localhost:5000'
const whiteListedChannelList = process.env.sunbird_content_service_whitelisted_channels
const blackListedChannelList = process.env.sunbird_content_service_blacklisted_channels
var whiteListQuery = whiteListedChannelList ? whiteListedChannelList.split(',') : []
var blackListedChannelListNew = blackListedChannelList ? blackListedChannelList.split(',') : []
var blackListQuery = {'ne': (blackListedChannelListNew)}
describe('Check health api', function (done) {
it('Check with different methods, it should return status code 200', function (done) {
request.options({
......@@ -11,12 +16,34 @@ describe('Check health api', function (done) {
json: true
}, function (_error, response, body) {
expect(body).toBe('OK')
var whiteListQuery = (process.env.sunbird_content_service_whitelisted_channels).split(',')
var blackListQuery = {'ne': ((process.env.sunbird_content_service_blacklisted_channels).split(','))}
expect(configUtil.getConfig('CHANNEL_FILTER_QUERY_STRING')).toEqual(whiteListQuery || blackListQuery)
done()
})
})
it('test for whiteList configured', function () {
if (whiteListQuery && whiteListQuery.lenght > 0) {
expect(configUtil.getConfig('CHANNEL_FILTER_QUERY_STRING')).toEqual(whiteListQuery)
}
})
it('test for blackList configured', function () {
if (!(whiteListQuery && whiteListQuery.lenght > 0) && (blackListQuery && blackListQuery.lenght > 0)) {
expect(configUtil.getConfig('CHANNEL_FILTER_QUERY_STRING')).toEqual(blackListQuery)
}
})
it('test for whitelist and blackList not configured', function () {
if (!(whiteListQuery && whiteListQuery.lenght > 0) && !(blackListQuery && blackListQuery.lenght > 0)) {
expect(configUtil.getConfig('CHANNEL_FILTER_QUERY_STRING')).toEqual({})
}
})
it('test for whitelist and blackList is configured', function () {
if ((whiteListQuery && whiteListQuery.lenght > 0) && (blackListQuery && blackListQuery.lenght > 0)) {
var searchQuery = _.difference(whiteListQuery, blackListQuery)
expect(configUtil.getConfig('CHANNEL_FILTER_QUERY_STRING')).toEqual(searchQuery)
}
})
})
// below method used to close server once all the specs are executed
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment