diff options
| author | Julie | 2014-02-12 22:47:42 +0000 |
|---|---|---|
| committer | Peter Bacon Darwin | 2014-02-16 19:03:42 +0000 |
| commit | cd508678cd9baffd2bc0c9e11ae724a7b2ff70bb (patch) | |
| tree | aed39a3c95c481e875c3dedd43006ffdbe15cf62 /docs | |
| parent | 0f77bd6d0a5c7c4529f5330ece032eea32eca278 (diff) | |
| download | angular.js-cd508678cd9baffd2bc0c9e11ae724a7b2ff70bb.tar.bz2 | |
chore(protractor-generator): add dgeni processor for protractor
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/config/index.js | 1 | ||||
| -rw-r--r-- | docs/config/processors/protractor-generate.js | 45 | ||||
| -rw-r--r-- | docs/config/templates/protractorTests.template.js | 7 |
3 files changed, 53 insertions, 0 deletions
diff --git a/docs/config/index.js b/docs/config/index.js index ae905889..eb23737e 100644 --- a/docs/config/index.js +++ b/docs/config/index.js @@ -12,6 +12,7 @@ module.exports = function(config) { require('./processors/keywords'), require('./processors/versions-data'), require('./processors/pages-data'), + require('./processors/protractor-generate'), require('./processors/index-page') ]); diff --git a/docs/config/processors/protractor-generate.js b/docs/config/processors/protractor-generate.js new file mode 100644 index 00000000..39c79212 --- /dev/null +++ b/docs/config/processors/protractor-generate.js @@ -0,0 +1,45 @@ +var _ = require('lodash'); +var log = require('winston'); +var path = require('canonical-path'); +var trimIndentation = require('dgeni/lib/utils/trim-indentation'); +var code = require('dgeni/lib/utils/code'); +var protractorFolder; + +module.exports = { + name: 'protractor-generate', + description: 'Generate a protractor test file from the e2e tests in the examples', + runAfter: ['adding-extra-docs'], + runBefore: ['extra-docs-added'], + init: function(config, injectables) { + protractorFolder = config.get('rendering.protractor.outputFolder', 'ptore2e'); + }, + process: function(docs, examples) { + _.forEach(examples, function(example) { + + _.forEach(example.files, function(file) { + + // Check if it's a Protractor test. + if (!(file.type == 'protractor')) { + return; + } + + // Create a new file for the test. + // TODO - at the moment, only jqLite is being used. Will need to generate + // another doc for jQuery if we want to test against that. + var protractorDoc = { + docType: 'e2e-test', + id: 'protractorTest' + '-' + example.id, + template: 'protractorTests.template.js', + outputPath: path.join(protractorFolder, example.id, 'jqlite' + '_test.js'), + innerTest: file.fileContents, + pathPrefix: '.', // Hold for if we test with full jQuery + exampleId: example.id, + description: example.doc.id, + examplePath: example.outputFolder + '/index.html' + }; + + docs.push(protractorDoc); + }); + }); + } +}; diff --git a/docs/config/templates/protractorTests.template.js b/docs/config/templates/protractorTests.template.js new file mode 100644 index 00000000..d7580a48 --- /dev/null +++ b/docs/config/templates/protractorTests.template.js @@ -0,0 +1,7 @@ +describe("{$ doc.description $}", function() { + beforeEach(function() { + browser.get("{$ doc.pathPrefix $}/{$ doc.examplePath $}"); + }); + +{$ doc.innerTest $} +}); |
