Skip to content

Commit

Permalink
UT: fix stub operations (losing coverage percent)
Browse files Browse the repository at this point in the history
  • Loading branch information
nicolaslabbe committed Nov 28, 2016
1 parent 6d226f9 commit 1146a53
Show file tree
Hide file tree
Showing 19 changed files with 572 additions and 190 deletions.
14 changes: 14 additions & 0 deletions src/cli/cms/data/regex.js
Original file line number Diff line number Diff line change
Expand Up @@ -95,4 +95,18 @@ export function getTagAbeWithTab(text, tab) {

export function validDataAbe(str){
return str.replace(/\[([0-9]*)\]/g, '$1')
}

export function getWorkflowFromOperationsUrl(str){
let regUrl = /\/abe\/operations\/(.*?)\/(.*?)\//
var workflow = 'draft'
var match = str.match(regUrl)
if (match != null && match[1] != null) {
workflow = match[1]
}
var postUrl = str.replace(regUrl, '')
return {
workflow: workflow,
postUrl: postUrl
}
}
4 changes: 2 additions & 2 deletions src/cli/cms/editor/handlebars/listPage.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,15 +66,15 @@ export default function listPage(file, index, text) {
<div class="row icons-action">`

if(file.publish != null) {
res += `<a href="/abe/unpublish${file.abe_meta.link}"
res += `<a href="/abe/operations/${file.abe_meta.status}/unpublish${file.abe_meta.link}"
title="${text.unpublish}"
class="icon" data-unpublish="true" data-text="${text.confirmUnpublish} ${file.abe_meta.link}"
title="unpublish">
<span class="glyphicon glyphicon-eye-close"></span>
</a>`
}

res += `<a href="/abe/delete${file.abe_meta.link}"
res += `<a href="/abe/operations/${file.abe_meta.status}/delete${file.abe_meta.link}"
title="${text.delete}"
class="icon"
data-delete="true"
Expand Down
2 changes: 1 addition & 1 deletion src/cli/cms/operations/create.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,10 @@ var create = function(template, pathCreate, name, req, forceJson = {}, duplicate
var templateText = cmsTemplates.template.getTemplate(template)
json = cmsData.values.removeDuplicate(templateText, json)
}

var resHook = abeExtend.hooks.instance.trigger('beforeFirstSave', postUrl, req.body, json)
postUrl = resHook.postUrl
json = resHook.json

var p2 = cmsOperations.post.draft(
postUrl,
json,
Expand Down
4 changes: 2 additions & 2 deletions src/cli/cms/operations/post.js
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ export function unpublish(filePath) {
delete json.abe_meta.publish
}

var p = draft(
var p = cmsOperations.post.draft(
filePath,
json,
'draft'
Expand Down Expand Up @@ -147,7 +147,7 @@ export function reject(filePath, json, workflow) {
if(json.abe_meta.publish != null) {
delete json.abe_meta.publish
}
var p2 = draft(
var p2 = cmsOperations.post.draft(
filePath,
json,
rejectToWorkflow
Expand Down
2 changes: 1 addition & 1 deletion src/cli/users/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,7 @@ export function getUserWorkflow(status, role) {
type = (type != null) ? type : flow
return {
status: flow,
url: `/abe/save/${type}/${action}`
url: `/abe/operations/${type}/${action}`
}
}

Expand Down
12 changes: 5 additions & 7 deletions src/server/controllers/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@ import {
,getGeneratePost
,operations
,getSaveConfig
,getUnpublish
,getDelete
,postUpload
,postSqlRequest
,postReference
Expand Down Expand Up @@ -57,8 +55,6 @@ router.post('/abe/page/*', postPage)
router.get('/abe/page/*', getPage)
router.get('/abe/generate-posts', getGeneratePost)
router.get('/abe/save-config', getSaveConfig)
router.get('/abe/unpublish*', getUnpublish)
router.get('/abe/delete*', getDelete)
router.get('/abe/reference/*', getReference)
router.get('/abe/thumbs/*', getThumbs)
router.get('/abe/image/*', getImage)
Expand All @@ -74,9 +70,11 @@ router.get('/abe/list-hooks*', getListHooks)

var workflows = config.users.workflow
Array.prototype.forEach.call(workflows, (workflow) => {
router.post(`/abe/save/${workflow}/reject*`, operations.postReject)
router.post(`/abe/save/${workflow}/submit*`, operations.postSubmit)
router.post(`/abe/save/${workflow}/edit*`, operations.postSubmit)
router.get(`/abe/operations/${workflow}/unpublish*`, operations.getUnpublish)
router.get(`/abe/operations/${workflow}/delete*`, operations.getDelete)
router.post(`/abe/operations/${workflow}/reject*`, operations.postReject)
router.post(`/abe/operations/${workflow}/submit*`, operations.postSubmit)
router.post(`/abe/operations/${workflow}/edit*`, operations.postSubmit)
})

var routes = abeExtend.plugins.instance.getRoutes()
Expand Down
4 changes: 0 additions & 4 deletions src/server/routes/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@ import getPage from './get-page'
import postPage from './post-page'
import getGeneratePost from './get-generate-posts'
import getSaveConfig from './get-save-config'
import getUnpublish from './get-unpublish'
import getDelete from './get-delete'
import postUpload from './post-upload'
import postSqlRequest from './post-sql-request'
import postReference from './post-reference'
Expand All @@ -33,8 +31,6 @@ export {
postPage,
getGeneratePost,
getSaveConfig,
getUnpublish,
getDelete,
postUpload,
postSqlRequest,
postReference,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
import {
abeExtend,
cmsOperations
} from '../../cli'
abeExtend
,cmsOperations
,cmsData
} from '../../../../cli'

var route = function(req, res, next){
abeExtend.hooks.instance.trigger('beforeRoute', req, res, next)
if(typeof res._header !== 'undefined' && res._header !== null) return

var filepath = req.originalUrl.replace('/abe/delete', '')
var operation = cmsData.regex.getWorkflowFromOperationsUrl(req.originalUrl)

cmsOperations.remove.remove(filepath)
cmsOperations.remove.remove(operation.postUrl)

var result = {
success: 1,
file: filepath
file: operation.postUrl
}
res.set('Content-Type', 'application/json')
res.send(JSON.stringify(result))
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
import {
cmsOperations
,abeExtend
} from '../../cli'
,cmsData
} from '../../../../cli'

var route = function(req, res, next){
abeExtend.hooks.instance.trigger('beforeRoute', req, res, next)
if(typeof res._header !== 'undefined' && res._header !== null) return

var filepath = req.originalUrl.replace('/abe/unpublish', '')
cmsOperations.post.unpublish(filepath)
var operation = cmsData.regex.getWorkflowFromOperationsUrl(req.originalUrl)

cmsOperations.post.unpublish(operation.postUrl)

var result = {
success: 1,
file: filepath
file: operation.postUrl
}
res.set('Content-Type', 'application/json')
res.send(JSON.stringify(result))
Expand Down
4 changes: 4 additions & 0 deletions src/server/routes/operations/index.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
import getUnpublish from './get/unpublish'
import getDelete from './get/delete'
import postSubmit from './post/submit'
import postReject from './post/reject'

export {
postSubmit
,postReject
,getUnpublish
,getDelete
}
45 changes: 0 additions & 45 deletions src/server/routes/operations/post/edit.js

This file was deleted.

19 changes: 7 additions & 12 deletions src/server/routes/operations/post/reject.js
Original file line number Diff line number Diff line change
@@ -1,24 +1,19 @@
import {
cmsOperations,
abeExtend
cmsOperations
,abeExtend
,cmsData
} from '../../../../cli'

var route = function(req, res, next){
abeExtend.hooks.instance.trigger('beforeRoute', req, res, next)
if(typeof res._header !== 'undefined' && res._header !== null) return

let regUrl = /\/abe\/save\/(.*?)\/reject\//
var workflow = 'draft'
var match = req.originalUrl.match(regUrl)
if (match != null && match[1] != null) {
workflow = match[1]
}
var postUrl = req.originalUrl.replace(regUrl, '')

var operation = cmsData.regex.getWorkflowFromOperationsUrl(req.originalUrl)

var p = cmsOperations.post.reject(
postUrl,
operation.postUrl,
req.body.json,
workflow
operation.workflow
)

p.then((result) => {
Expand Down
28 changes: 11 additions & 17 deletions src/server/routes/operations/post/submit.js
Original file line number Diff line number Diff line change
@@ -1,32 +1,26 @@
import {
cmsOperations,
abeExtend
cmsOperations
,abeExtend
,cmsData
} from '../../../../cli'

var route = function(req, res, next){
abeExtend.hooks.instance.trigger('beforeRoute', req, res, next)
if(typeof res._header !== 'undefined' && res._header !== null) return

let regUrl = /\/abe\/save\/(.*?)\/submit\//
var workflow = 'draft'
var match = req.originalUrl.match(regUrl)
if (match != null && match[1] != null) {
workflow = match[1]
}
var postUrl = req.originalUrl.replace(regUrl, '')
var json = req.body.json

var operation = cmsData.regex.getWorkflowFromOperationsUrl(req.originalUrl)

var p
if (workflow === 'publish') {
if (operation.workflow === 'publish') {
p = cmsOperations.post.publish(
postUrl,
json
operation.postUrl,
req.body.json
)
}else {
p = cmsOperations.post.draft(
postUrl,
json,
workflow
operation.postUrl,
req.body.json,
operation.workflow
)
}

Expand Down
16 changes: 8 additions & 8 deletions test/regex.js → test/cms/data/regex.js
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
var chai = require('chai');
var path = require('path');

var config = require('../src/cli').config
config.set({root: path.join(__dirname,'fixtures')})
var config = require('../../../src/cli').config
config.set({root: path.join(process.cwd(), 'test', 'fixtures')})

var cmsData = require('../src/cli').cmsData
var Manager = require('../src/cli').Manager;
var cmsData = require('../../../src/cli').cmsData
var Manager = require('../../../src/cli').Manager;
var fse = require('fs-extra');

describe('Request', function() {
describe('regex', function() {
before( function(done) {
Manager.instance.init()
.then(function () {

this.fixture = {
articleSingle: fse.readFileSync(path.join(__dirname, 'fixtures', 'templates', 'article-single-abe.html'), 'utf8'),
articleEach: fse.readFileSync(path.join(__dirname, 'fixtures', 'templates', 'article-each-abe.html'), 'utf8'),
articleRequest: fse.readFileSync(path.join(__dirname, 'fixtures', 'templates', 'article-request.html'), 'utf8')
articleSingle: fse.readFileSync(path.join(process.cwd(), 'test', 'fixtures', 'templates', 'article-single-abe.html'), 'utf8'),
articleEach: fse.readFileSync(path.join(process.cwd(), 'test', 'fixtures', 'templates', 'article-each-abe.html'), 'utf8'),
articleRequest: fse.readFileSync(path.join(process.cwd(), 'test', 'fixtures', 'templates', 'article-request.html'), 'utf8')
}
done()

Expand Down
Loading

0 comments on commit 1146a53

Please sign in to comment.