You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by ga...@apache.org on 2014/08/12 15:21:15 UTC
[4/4] fauxton commit: updated refs/heads/backbone.layout-upgrade to
6f4e4f6
Enable RAF and fix tests
Project: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/commit/6f4e4f69
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/tree/6f4e4f69
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/diff/6f4e4f69
Branch: refs/heads/backbone.layout-upgrade
Commit: 6f4e4f698749d778583a7324caf724861b7e0266
Parents: 5588bbc
Author: Garren Smith <ga...@gmail.com>
Authored: Tue Aug 12 15:20:58 2014 +0200
Committer: Garren Smith <ga...@gmail.com>
Committed: Tue Aug 12 15:20:58 2014 +0200
----------------------------------------------------------------------
app/addons/activetasks/tests/viewsSpec.js | 15 ++++++++-------
app/addons/config/tests/resourcesSpec.js | 4 ++--
app/addons/fauxton/tests/baseSpec.js | 12 ++++++++----
app/addons/fauxton/tests/filterViewSpec.js | 21 +++++++++++++--------
app/addons/fauxton/tests/paginateSpec.js | 4 ++--
app/addons/permissions/tests/viewsSpec.js | 12 ++++++------
app/core/base.js | 2 +-
app/core/layout.js | 2 +-
test/mocha/testUtils.js | 8 ++++++--
9 files changed, 47 insertions(+), 33 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/app/addons/activetasks/tests/viewsSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/activetasks/tests/viewsSpec.js b/app/addons/activetasks/tests/viewsSpec.js
index 19c5b65..8731200 100644
--- a/app/addons/activetasks/tests/viewsSpec.js
+++ b/app/addons/activetasks/tests/viewsSpec.js
@@ -27,9 +27,9 @@ define([
describe("on change polling rate", function () {
var viewSandbox;
- beforeEach(function () {
+ beforeEach(function (done) {
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(tabMenu);
+ viewSandbox.renderView(tabMenu, done);
});
afterEach(function () {
@@ -66,7 +66,7 @@ define([
describe('on request by type', function () {
var viewSandbox, mainView;
- beforeEach(function () {
+ beforeEach(function (done) {
mainView = new Views.View({
collection: new Activetasks.AllTasks(),
@@ -74,8 +74,9 @@ define([
});
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(tabMenu);
- viewSandbox.renderView(mainView);
+ viewSandbox.renderView(tabMenu).promise().then(function () {
+ viewSandbox.renderView(mainView, done);
+ });
});
afterEach(function () {
@@ -99,14 +100,14 @@ define([
describe('DataSection', function () {
var viewSandbox, mainView;
- beforeEach(function () {
+ beforeEach(function (done) {
mainView = new Views.View({
collection: new Activetasks.AllTasks(),
currentView: "all"
});
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(mainView);
+ viewSandbox.renderView(mainView, done);
});
afterEach(function () {
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/app/addons/config/tests/resourcesSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/config/tests/resourcesSpec.js b/app/addons/config/tests/resourcesSpec.js
index 1cc9e62..8699e36 100644
--- a/app/addons/config/tests/resourcesSpec.js
+++ b/app/addons/config/tests/resourcesSpec.js
@@ -37,9 +37,9 @@ define([
describe("editing Items", function () {
var viewSandbox;
- beforeEach(function () {
+ beforeEach(function (done) {
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(tabMenu);
+ viewSandbox.renderView(tabMenu, done);
});
afterEach(function () {
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/app/addons/fauxton/tests/baseSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/fauxton/tests/baseSpec.js b/app/addons/fauxton/tests/baseSpec.js
index a7ff7a1..b9814bc 100644
--- a/app/addons/fauxton/tests/baseSpec.js
+++ b/app/addons/fauxton/tests/baseSpec.js
@@ -88,15 +88,19 @@ describe('Fauxton Notifications', function () {
delete window.fauxton_xss_test_escaped;
});
- it('should be able to render unescaped', function () {
+ it('should be able to render unescaped', function (done) {
var view = FauxtonAPI.addNotification({
msg: '<script>window.fauxton_xss_test_unescaped = true;</script>',
selector: 'body',
escape: false
});
- view.$el.remove();
- assert.ok(window.fauxton_xss_test_unescaped);
- delete window.fauxton_xss_test_unescaped;
+
+ view.promise().then(function () {
+ view.$el.remove();
+ assert.ok(window.fauxton_xss_test_unescaped);
+ delete window.fauxton_xss_test_unescaped;
+ done();
+ });
});
it('should render escaped if the escape value is not explicitly false,' +
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/app/addons/fauxton/tests/filterViewSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/fauxton/tests/filterViewSpec.js b/app/addons/fauxton/tests/filterViewSpec.js
index 1eefa05..0d9e7d0 100644
--- a/app/addons/fauxton/tests/filterViewSpec.js
+++ b/app/addons/fauxton/tests/filterViewSpec.js
@@ -27,26 +27,29 @@ define([
FauxtonAPI.router.triggerRouteEvent = function () {};
}
- beforeEach(function () {
+ beforeEach(function (done) {
filterView = new Components.FilterView({
eventNamespace: 'mynamespace'
});
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(filterView);
+ viewSandbox.renderView(filterView, done);
});
afterEach(function () {
viewSandbox.remove();
});
- it('should add filter markup', function () {
+ it('should add filter markup', function (done) {
filterView.$('[name="filter"]').val('i was a lonely filter');
filterView.$('.js-filter-form').submit();
-
filterView.$('[name="filter"]').val('i am a filter');
filterView.$('.js-filter-form').submit();
- assert.equal(2, filterView.$('.js-remove-filter').length);
+
+ setTimeout(function () {
+ assert.equal(2, filterView.$('.js-remove-filter').length);
+ done();
+ }, 300);
});
it('should remove filter markup', function () {
@@ -70,13 +73,15 @@ define([
assert.equal(0, filterView.$('.js-filter-tooltip').length);
});
- it('should add tooltips when a text for it is defined', function () {
+ it('should add tooltips when a text for it is defined', function (done) {
filterView = new Components.FilterView({
eventNamespace: 'mynamespace',
tooltipText: 'ente ente'
});
- viewSandbox.renderView(filterView);
- assert.equal(1, filterView.$('.js-filter-tooltip').length);
+ viewSandbox.renderView(filterView).promise().then(function () {
+ assert.equal(1, filterView.$('.js-filter-tooltip').length);
+ done();
+ });
});
});
});
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/app/addons/fauxton/tests/paginateSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/fauxton/tests/paginateSpec.js b/app/addons/fauxton/tests/paginateSpec.js
index d336ea8..f97b255 100644
--- a/app/addons/fauxton/tests/paginateSpec.js
+++ b/app/addons/fauxton/tests/paginateSpec.js
@@ -22,7 +22,7 @@ define([
describe('IndexPaginate', function () {
var viewSandbox, paginate, collection, navigateMock;
- beforeEach(function () {
+ beforeEach(function (done) {
collection = new Models.IndexCollection([{
id:'myId1',
doc: 'num1'
@@ -43,7 +43,7 @@ define([
canShowNextfn: function () { return true;}
});
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(paginate);
+ viewSandbox.renderView(paginate, done);
});
afterEach(function () {
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/app/addons/permissions/tests/viewsSpec.js
----------------------------------------------------------------------
diff --git a/app/addons/permissions/tests/viewsSpec.js b/app/addons/permissions/tests/viewsSpec.js
index c22d405..147cee4 100644
--- a/app/addons/permissions/tests/viewsSpec.js
+++ b/app/addons/permissions/tests/viewsSpec.js
@@ -21,7 +21,7 @@ define([
describe('Permission View', function () {
var security, section, viewSandbox;
- beforeEach(function () {
+ beforeEach(function (done) {
security = new Models.Security({'admins': {
'names': ['_user'],
'roles': []
@@ -34,7 +34,7 @@ define([
});
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(section);
+ viewSandbox.renderView(section, done);
});
afterEach(function () {
@@ -67,7 +67,7 @@ define([
security,
viewSandbox;
- beforeEach(function () {
+ beforeEach(function (done) {
security = new Models.Security({'admins': {
'names': ['_user'],
'roles': []
@@ -80,7 +80,7 @@ define([
});
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(section);
+ viewSandbox.renderView(section, done);
});
afterEach(function () {
@@ -130,13 +130,13 @@ define([
var item,
viewSandbox;
- beforeEach(function () {
+ beforeEach(function (done) {
item = new Views.PermissionItem({
item: '_user'
});
viewSandbox = new ViewSandbox();
- viewSandbox.renderView(item);
+ viewSandbox.renderView(item, done);
});
afterEach(function () {
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/app/core/base.js
----------------------------------------------------------------------
diff --git a/app/core/base.js b/app/core/base.js
index 9fbb7a0..e1f5331 100644
--- a/app/core/base.js
+++ b/app/core/base.js
@@ -64,7 +64,7 @@ function(Backbone, LayoutManager) {
// Either tests or source are expecting synchronous renders, so disable
// asynchronous rendering improvements.
- useRAF: false,
+ useRAF: true,
forceRender: function () {
this.hasRendered = false;
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/app/core/layout.js
----------------------------------------------------------------------
diff --git a/app/core/layout.js b/app/core/layout.js
index 84fc71e..8d589e7 100644
--- a/app/core/layout.js
+++ b/app/core/layout.js
@@ -19,7 +19,7 @@ define([
// Allows the main layout of the page to be changed by any plugin.
var Layout = function () {
this.layout = new Backbone.Layout({
- template: "templates/layouts/with_sidebar",
+ template: "templates/layouts/with_sidebar"
});
this.layoutViews = {};
http://git-wip-us.apache.org/repos/asf/couchdb-fauxton/blob/6f4e4f69/test/mocha/testUtils.js
----------------------------------------------------------------------
diff --git a/test/mocha/testUtils.js b/test/mocha/testUtils.js
index 2c418f9..6b9e57f 100644
--- a/test/mocha/testUtils.js
+++ b/test/mocha/testUtils.js
@@ -29,15 +29,19 @@ function(FauxtonAPI,chai, sinonChai) {
this.$ = this.$el.find;
},
views: [],
- renderView: function (view) {
+ renderView: function (view, done) {
this.views.push(view);
this.$el.append(view.el);
view.render();
+ if (done) {
+ view.promise().done(function () { done(); });
+ }
+ return view;
},
remove: function () {
_.each(this.views, function (view) {
- view.remove();
+ view.removeView();
}, this);
}
});