Skip to content
This repository was archived by the owner on Mar 26, 2018. It is now read-only.

Commit 468c97a

Browse files
committed
Auto generate imports in elements.html
1 parent fddb61a commit 468c97a

File tree

7 files changed

+37
-10
lines changed

7 files changed

+37
-10
lines changed

app/index.js

+1
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ module.exports = yeoman.generators.Base.extend({
6565
this.template('app/favicon.ico');
6666
this.template('app/robots.txt');
6767
this.copy('app/htaccess', 'app/.htaccess');
68+
this.copy('app/elements.html', 'app/elements/elements.html');
6869
this.copy('app/yo-list.html', 'app/elements/yo-list.html');
6970
this.copy('app/yo-greeting.html', 'app/elements/yo-greeting.html');
7071
this.write('app/index.html', this.indexFile);

app/templates/app/elements.html

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
<link rel="import" href="yo-list.html">
2+
<link rel="import" href="yo-greeting.html">

app/templates/index.html

+1-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@
1414

1515
<!-- Place your HTML imports here -->
1616
<script src="bower_components/platform/platform.js"></script>
17-
<link rel="import" href="elements/yo-list.html">
18-
<link rel="import" href="elements/yo-greeting.html">
17+
<link rel="import" href="elements/elements.html">
1918
</head>
2019
<body unresolved>
2120

el/index.js

+6
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,12 @@ module.exports = yeoman.generators.Base.extend({
1717
return;
1818
}
1919

20+
// Create the template element
2021
this.template('_element.html', 'app/elements/' + this.elementName + '.html');
22+
23+
// Wire up the dependency in elements.html
24+
var file = this.readFileAsString('app/elements/elements.html');
25+
file += '<link rel="import" href="' + this.elementName + '.html">\n';
26+
this.writeFileFromString(file, 'app/elements/elements.html');
2127
}
2228
});

test/app-test.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
var path = require('path');
44
var helpers = require('yeoman-generator').test;
55

6-
describe('Polymer generator test', function () {
6+
describe('yo polymer:app test', function () {
77
before(function (done) {
88
helpers.testDirectory(path.join(__dirname, 'temp'), function (err) {
99
if (err) {
@@ -43,6 +43,7 @@ describe('Polymer generator test', function () {
4343
'app/favicon.ico',
4444
'app/.htaccess',
4545
'app/robots.txt',
46+
'app/elements/elements.html',
4647
'app/elements/yo-greeting.html',
4748
'app/elements/yo-list.html'
4849
];

test/el-test.js

+24-6
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,29 @@
33
var path = require('path');
44
var helpers = require('yeoman-generator').test;
55

6-
describe('Polymer generator test', function () {
6+
describe('yo polymer:el test', function () {
77
before(function (done) {
88
helpers.testDirectory(path.join(__dirname, 'temp'), function (err) {
99
if (err) {
1010
return done(err);
1111
}
1212

13-
this.polymer = helpers.createGenerator('polymer:el', [
13+
// Create the polymer:app generator
14+
this.polymer = helpers.createGenerator('polymer:app', [
15+
'../../app', [
16+
helpers.createDummyGenerator(),
17+
'mocha:app'
18+
]
19+
]);
20+
this.polymer.options['skip-install'] = true;
21+
22+
// Create the polymer:el generator
23+
this.element = helpers.createGenerator('polymer:el', [
1424
'../../el', [
1525
helpers.createDummyGenerator(),
1626
'mocha:el'
1727
]
1828
], 'x-foo');
19-
this.polymer.options['skip-install'] = true;
2029

2130
done();
2231
}.bind(this));
@@ -32,10 +41,19 @@ describe('Polymer generator test', function () {
3241
'app/elements/x-foo.html'
3342
];
3443

35-
this.polymer.run({}, function () {
36-
helpers.assertFiles(expected);
37-
done();
44+
helpers.mockPrompt(this.polymer, {
45+
includeCore: true,
46+
includePaper: true
3847
});
48+
49+
// Run the polymer:app generator
50+
this.polymer.run({}, function () {
51+
// Then run the polymer:el generator
52+
this.element.run({}, function() {
53+
helpers.assertFiles(expected);
54+
done();
55+
});
56+
}.bind(this));
3957
});
4058

4159
});

test/seed-test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
var path = require('path');
44
var helpers = require('yeoman-generator').test;
55

6-
describe('Polymer generator test', function () {
6+
describe('yo polymer:seed test', function () {
77
before(function (done) {
88
helpers.testDirectory(path.join(__dirname, 'temp'), function (err) {
99
if (err) {

0 commit comments

Comments
 (0)