diff --git a/webclient/test/README b/webclient/test/README
index b1e0d7adea..1813883196 100644
--- a/webclient/test/README
+++ b/webclient/test/README
@@ -1,9 +1,22 @@
Requires:
- - npm
+ - nodejs/npm
- npm install karma
- npm install jasmine
+ - npm install protractor (e2e testing)
-Setting up continuous integration / run the tests:
+Setting up continuous integration / run the unit tests (make sure you're in
+this directory so it can find the config file):
karma start
+Setting up e2e tests (only if you don't have a selenium server to run the tests
+on. If you do, edit the config to point to that url):
+ webdriver-manager update
+ webdriver-manager start
+
+Running e2e tests:
+ protractor protractor.conf.js
+
+
+
+
diff --git a/webclient/test/e2e/user.spec.js b/webclient/test/e2e/user.spec.js
new file mode 100644
index 0000000000..bbac53899b
--- /dev/null
+++ b/webclient/test/e2e/user.spec.js
@@ -0,0 +1,6 @@
+describe("user page", function() {
+ it("should have a title", function() {
+ browser.get("http://matrix.org/alpha/#/login");
+ expect(browser.getTitle()).toEqual("[matrix]");
+ });
+});
diff --git a/webclient/test/protractor.conf.js b/webclient/test/protractor.conf.js
new file mode 100644
index 0000000000..66f4df5407
--- /dev/null
+++ b/webclient/test/protractor.conf.js
@@ -0,0 +1,6 @@
+var env = require("./environment-protractor.js");
+
+exports.config = {
+ seleniumAddress: env.seleniumAddress,
+ specs: ['e2e/*.spec.js']
+}
diff --git a/webclient/test/unit/user-controller.spec.js b/webclient/test/unit/user-controller.spec.js
index 217559114b..798cc4de48 100644
--- a/webclient/test/unit/user-controller.spec.js
+++ b/webclient/test/unit/user-controller.spec.js
@@ -21,13 +21,12 @@ describe("UserCtrl", function() {
getDisplayName: function(uid) {
var d = $q.defer();
- // FIXME: everything goes into fire here
d.resolve({
data: {
displayname: displayName
}
});
- return d;
+ return d.promise;
},
getProfilePictureUrl: function(uid) {
@@ -37,7 +36,7 @@ describe("UserCtrl", function() {
avatar_url: avatarUrl
}
});
- return d;
+ return d.promise;
}
};
scope = $rootScope.$new();
@@ -49,7 +48,6 @@ describe("UserCtrl", function() {
'$routeParams': routeParams,
'matrixService': matrixService
});
- console.log("end inject");
});
});
|