mirror of
https://github.com/discourse/discourse.git
synced 2025-05-28 22:27:49 +08:00
REFACTOR: naming and state refactor (#19187)
- better handling of drawer state using chat state manager - removes various float and topic occurrences to use drawer - ensures user can chat before doing a lot of chat setup - fixes a bug which was creating presence errors in tests - removes dead code
This commit is contained in:
@ -71,12 +71,63 @@ module(
|
||||
assert.strictEqual(this.subject.lastKnownAppURL, "/bar");
|
||||
});
|
||||
|
||||
test("isFullPage", function (assert) {
|
||||
test("isFullPageActive", function (assert) {
|
||||
sinon.stub(this.subject.router, "currentRouteName").value("foo");
|
||||
assert.notOk(this.subject.isFullPage);
|
||||
assert.notOk(this.subject.isFullPageActive);
|
||||
|
||||
sinon.stub(this.subject.router, "currentRouteName").value("chat");
|
||||
assert.ok(this.subject.isFullPage);
|
||||
assert.ok(this.subject.isFullPageActive);
|
||||
});
|
||||
|
||||
test("didCollapseDrawer", function (assert) {
|
||||
this.subject.didCollapseDrawer();
|
||||
|
||||
assert.strictEqual(this.subject.isDrawerExpanded, false);
|
||||
assert.strictEqual(this.subject.isDrawerActive, true);
|
||||
});
|
||||
|
||||
test("didExpandDrawer", function (assert) {
|
||||
const stub = sinon.stub(
|
||||
this.owner.lookup("service:chat"),
|
||||
"updatePresence"
|
||||
);
|
||||
|
||||
this.subject.didExpandDrawer();
|
||||
|
||||
assert.strictEqual(this.subject.isDrawerExpanded, true);
|
||||
assert.strictEqual(this.subject.isDrawerActive, true);
|
||||
sinon.assert.calledOnce(stub);
|
||||
});
|
||||
|
||||
test("didCloseDrawer", function (assert) {
|
||||
const stub = sinon.stub(
|
||||
this.owner.lookup("service:chat"),
|
||||
"updatePresence"
|
||||
);
|
||||
|
||||
this.subject.didCloseDrawer();
|
||||
|
||||
assert.strictEqual(this.subject.isDrawerExpanded, false);
|
||||
assert.strictEqual(this.subject.isDrawerActive, false);
|
||||
sinon.assert.calledOnce(stub);
|
||||
});
|
||||
|
||||
test("didOpenDrawer", function (assert) {
|
||||
const stub = sinon.stub(
|
||||
this.owner.lookup("service:chat"),
|
||||
"updatePresence"
|
||||
);
|
||||
|
||||
this.subject.didOpenDrawer();
|
||||
|
||||
assert.strictEqual(this.subject.isDrawerExpanded, true);
|
||||
assert.strictEqual(this.subject.isDrawerActive, true);
|
||||
assert.strictEqual(this.subject.lastKnownChatURL, "/chat");
|
||||
|
||||
this.subject.didOpenDrawer("/foo");
|
||||
|
||||
assert.strictEqual(this.subject.lastKnownChatURL, "/foo");
|
||||
sinon.assert.calledTwice(stub);
|
||||
});
|
||||
}
|
||||
);
|
||||
|
Reference in New Issue
Block a user