This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/tests/unit/controllers/preferences-profile-test.js
2021-11-08 10:26:28 +01:00

46 lines
1.3 KiB
JavaScript

import { discourseModule } from "discourse/tests/helpers/qunit-helpers";
import { test } from "qunit";
import EmberObject from "@ember/object";
import User from "discourse/models/user";
discourseModule("Unit | Controller | preferences/profile", function () {
test("prepare custom field data", function (assert) {
const controller = this.getController("preferences/profile", {
model: User.create({
id: 70,
second_factor_enabled: true,
is_anonymous: true,
user_fields: {
field_1: "1",
field_2: "2",
field_3: "3",
},
}),
currentUser: {
id: 1234,
},
});
controller.set("userFields", [
EmberObject.create({ value: "2", field: { id: "field_1" } }),
EmberObject.create({ value: null, field: { id: "field_2" } }),
EmberObject.create({ value: [], field: { id: "field_3" } }),
]);
controller.send("_updateUserFields");
assert.strictEqual(
controller.model.user_fields.field_1,
"2",
"updates string value"
);
assert.strictEqual(
controller.model.user_fields.field_2,
null,
"updates null"
);
assert.strictEqual(
controller.model.user_fields.field_3,
null,
"updates empty array as null"
);
});
});