mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-11-23 22:11:09 +03:00
Functional tests for home and post page
closes #1373 - Note that the tests fail if you run them pre #1363, thus future proofing us from this happening again. - Added submodule handling to travis - Added a new test for each of the home and post pages
This commit is contained in:
parent
422403c40b
commit
cfe272e175
@ -4,9 +4,8 @@ node_js:
|
||||
env:
|
||||
- DB=sqlite3
|
||||
- DB=mysql
|
||||
git:
|
||||
submodules: false
|
||||
before_install:
|
||||
- git submodule update --init
|
||||
- gem update --system
|
||||
- gem install sass bourbon
|
||||
- npm install -g grunt-cli
|
||||
|
22
core/test/functional/frontend/home_test.js
Normal file
22
core/test/functional/frontend/home_test.js
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* Tests the homepage
|
||||
*/
|
||||
|
||||
/*globals CasperTest, casper, __utils__, url, testPost, falseUser, email */
|
||||
CasperTest.begin('Home page loads', 3, function suite(test) {
|
||||
casper.start(url, function then(response) {
|
||||
test.assertTitle('Ghost', 'The homepage should have a title and it should be Ghost');
|
||||
test.assertExists('.content .post', 'There is at least one post on this page');
|
||||
test.assertSelectorHasText('.poweredby', 'Proudly published with Ghost');
|
||||
});
|
||||
}, true);
|
||||
|
||||
CasperTest.begin('Test helpers on homepage', 3, function suite(test) {
|
||||
casper.start(url, function then(response) {
|
||||
// body class
|
||||
test.assertExists('body.home-template', 'body_class outputs correct home-template class');
|
||||
// post class
|
||||
test.assertExists('article.post', 'post_class outputs correct post class');
|
||||
test.assertExists('article.tag-getting-started', 'post_class outputs correct tag class');
|
||||
});
|
||||
});
|
23
core/test/functional/frontend/post_test.js
Normal file
23
core/test/functional/frontend/post_test.js
Normal file
@ -0,0 +1,23 @@
|
||||
/**
|
||||
* Tests the default post page
|
||||
*/
|
||||
|
||||
/*globals CasperTest, casper, __utils__, url, testPost, falseUser, email */
|
||||
CasperTest.begin('Post page loads', 3, function suite(test) {
|
||||
casper.start(url + 'welcome-to-ghost', function then(response) {
|
||||
test.assertTitle('Welcome to Ghost', 'The post should have a title and it should be "Welcome to Ghost"');
|
||||
test.assertElementCount('.content .post', 1, 'There is exactly one post on this page');
|
||||
test.assertSelectorHasText('.poweredby', 'Proudly published with Ghost');
|
||||
});
|
||||
}, true);
|
||||
|
||||
CasperTest.begin('Test helpers on homepage', 4, function suite(test) {
|
||||
casper.start(url + 'welcome-to-ghost', function then(response) {
|
||||
// body class
|
||||
test.assertExists('body.post-template', 'body_class outputs correct post-template class');
|
||||
test.assertExists('body.tag-getting-started', 'body_class outputs correct tag class');
|
||||
// post class
|
||||
test.assertExists('article.post', 'post_class outputs correct post class');
|
||||
test.assertExists('article.tag-getting-started', 'post_class outputs correct tag class');
|
||||
});
|
||||
});
|
@ -1,10 +1,10 @@
|
||||
/**
|
||||
* Tests logging out and attempting to sign up
|
||||
* Tests archive page routing
|
||||
*/
|
||||
|
||||
/*globals casper, __utils__, url, testPost, falseUser, email */
|
||||
/*globals CasperTest, casper, __utils__, url, testPost, falseUser, email */
|
||||
CasperTest.begin('Redirects page 1 request', 1, function suite(test) {
|
||||
casper.thenOpen(url + 'page/1/', function then(response) {
|
||||
casper.thenOpen(url + 'page/1/', function then(response) {
|
||||
test.assertEqual(casper.getCurrentUrl().indexOf('page/'), -1, 'Should be redirected to "/".');
|
||||
});
|
||||
}, true);
|
Loading…
Reference in New Issue
Block a user