FIX: improves code, tests and utc handling of local-dates (#6644)

This commit is contained in:
Joffrey JAFFEUX
2018-11-22 17:19:24 +01:00
committed by GitHub
parent 56478166e5
commit 3ff3bb6e2a
8 changed files with 435 additions and 96 deletions

View File

@ -0,0 +1,50 @@
import { acceptance } from "helpers/qunit-helpers";
acceptance("Local Dates - composer", {
loggedIn: true,
settings: { discourse_local_dates_enabled: true }
});
test("composer bbcode", async assert => {
const getAttr = attr => {
return find(".d-editor-preview .discourse-local-date.cooked-date").attr(
`data-${attr}`
);
};
await visit("/");
await click("#create-topic");
await fillIn(
".d-editor-input",
'[date=2017-10-23 time=01:30:00 displayedZone="America/Chicago" format="LLLL" calendar="off" recurring="1.weeks" timezone="Asia/Calcutta" timezones="Europe/Paris|America/Los_Angeles"]'
);
assert.equal(getAttr("date"), "2017-10-23", "it has the correct date");
assert.equal(getAttr("time"), "01:30:00", "it has the correct time");
assert.equal(
getAttr("displayed-zone"),
"America/Chicago",
"it has the correct displayed zone"
);
assert.equal(getAttr("format"), "LLLL", "it has the correct format");
assert.equal(
getAttr("timezones"),
"Europe/Paris|America/Los_Angeles",
"it has the correct timezones"
);
assert.equal(getAttr("recurring"), "1.weeks", "it has the correct recurring");
assert.equal(
getAttr("timezone"),
"Asia/Calcutta",
"it has the correct timezone"
);
await fillIn(
".d-editor-input",
'[date=2017-10-24 format="LL" timezone="Asia/Calcutta" timezones="Europe/Paris|America/Los_Angeles"]'
);
assert.equal(getAttr("date"), "2017-10-24", "it has the correct date");
assert.notOk(getAttr("time"), "it doesn’t have time");
});