Skip to content

Commit 75c77a7

Browse files
committed
[FIX transforms] don't instantiate via new
* instantiates the transforms for the tests via container lookup instead of the new keyword * ports tests to modern test format * addresses lack of assertion messages in the boolean test (others still require this fix)
1 parent 2b89fe3 commit 75c77a7

4 files changed

Lines changed: 152 additions & 117 deletions

File tree

Lines changed: 85 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,87 @@
1-
import DS from 'ember-data';
2-
31
import { module, test } from 'qunit';
4-
5-
module('unit/transform - DS.BooleanTransform');
6-
7-
test('#serialize', function(assert) {
8-
let transform = new DS.BooleanTransform();
9-
10-
assert.strictEqual(transform.serialize(null, { allowNull: true }), null);
11-
assert.strictEqual(transform.serialize(undefined, { allowNull: true }), null);
12-
13-
assert.equal(transform.serialize(null, { allowNull: false }), false);
14-
assert.equal(transform.serialize(undefined, { allowNull: false }), false);
15-
16-
assert.equal(transform.serialize(null, {}), false);
17-
assert.equal(transform.serialize(undefined, {}), false);
18-
19-
assert.equal(transform.serialize(true), true);
20-
assert.equal(transform.serialize(false), false);
21-
});
22-
23-
test('#deserialize', function(assert) {
24-
let transform = new DS.BooleanTransform();
25-
26-
assert.strictEqual(transform.deserialize(null, { allowNull: true }), null);
27-
assert.strictEqual(transform.deserialize(undefined, { allowNull: true }), null);
28-
29-
assert.equal(transform.deserialize(null, { allowNull: false }), false);
30-
assert.equal(transform.deserialize(undefined, { allowNull: false }), false);
31-
32-
assert.equal(transform.deserialize(null, {}), false);
33-
assert.equal(transform.deserialize(undefined, {}), false);
34-
35-
assert.equal(transform.deserialize(true), true);
36-
assert.equal(transform.deserialize(false), false);
37-
38-
assert.equal(transform.deserialize('true'), true);
39-
assert.equal(transform.deserialize('TRUE'), true);
40-
assert.equal(transform.deserialize('false'), false);
41-
assert.equal(transform.deserialize('FALSE'), false);
42-
43-
assert.equal(transform.deserialize('t'), true);
44-
assert.equal(transform.deserialize('T'), true);
45-
assert.equal(transform.deserialize('f'), false);
46-
assert.equal(transform.deserialize('F'), false);
47-
48-
assert.equal(transform.deserialize('1'), true);
49-
assert.equal(transform.deserialize('0'), false);
50-
51-
assert.equal(transform.deserialize(1), true);
52-
assert.equal(transform.deserialize(2), false);
53-
assert.equal(transform.deserialize(0), false);
2+
import { setupTest } from 'ember-qunit';
3+
4+
module('unit/transform - BooleanTransform', function(hooks) {
5+
setupTest(hooks);
6+
7+
test('#serialize', async function(assert) {
8+
const transform = this.owner.lookup('transform:boolean');
9+
10+
assert.strictEqual(
11+
transform.serialize(null, { allowNull: true }),
12+
null,
13+
'{ allowNull: true } - we serialize null to null'
14+
);
15+
assert.strictEqual(
16+
transform.serialize(undefined, { allowNull: true }),
17+
null,
18+
'{ allowNull: true } - we serialize undefined to null'
19+
);
20+
21+
assert.equal(
22+
transform.serialize(null, { allowNull: false }),
23+
false,
24+
'{ allowNull: false } - we serialize null to false'
25+
);
26+
assert.equal(
27+
transform.serialize(undefined, { allowNull: false }),
28+
false,
29+
'{ allowNull: false } - we serialize null to false'
30+
);
31+
32+
assert.equal(transform.serialize(null, {}), false, 'we serialize null to false');
33+
assert.equal(transform.serialize(undefined, {}), false, 'we serialize undefined to false');
34+
35+
assert.equal(transform.serialize(true), true, 'we serialize true to true');
36+
assert.equal(transform.serialize(false), false, 'we serialize false to false');
37+
});
38+
39+
test('#deserialize', async function(assert) {
40+
const transform = this.owner.lookup('transform:boolean');
41+
42+
assert.strictEqual(
43+
transform.deserialize(null, { allowNull: true }),
44+
null,
45+
'{ allowNull: true } - we deserialize null to null'
46+
);
47+
assert.strictEqual(
48+
transform.deserialize(undefined, { allowNull: true }),
49+
null,
50+
'{ allowNull: true } - we deserialize undefined to null'
51+
);
52+
53+
assert.equal(
54+
transform.deserialize(null, { allowNull: false }),
55+
false,
56+
'{ allowNull: false } - we deserialize null to false'
57+
);
58+
assert.equal(
59+
transform.deserialize(undefined, { allowNull: false }),
60+
false,
61+
'{ allowNull: true } - we deserialize undefined to false'
62+
);
63+
64+
assert.equal(transform.deserialize(null, {}), false, 'we deserialize null to false');
65+
assert.equal(transform.deserialize(undefined, {}), false, 'we deserialize undefined to false');
66+
67+
assert.equal(transform.deserialize(true), true, 'we deserialize true to true');
68+
assert.equal(transform.deserialize(false), false, 'we deserialize false to false');
69+
70+
assert.equal(transform.deserialize('true'), true, 'we deserialize string "true" to true');
71+
assert.equal(transform.deserialize('TRUE'), true, 'we deserialize string "TRUE" to true');
72+
assert.equal(transform.deserialize('false'), false, 'we deserialize string "false" to false');
73+
assert.equal(transform.deserialize('FALSE'), false, 'we deserialize string "FALSE" to false');
74+
75+
assert.equal(transform.deserialize('t'), true, 'we deserialize string "t" to true');
76+
assert.equal(transform.deserialize('T'), true, 'we deserialize string "T" to true');
77+
assert.equal(transform.deserialize('f'), false, 'we deserialize string "f" to false');
78+
assert.equal(transform.deserialize('F'), false, 'we deserialize string "F" to false');
79+
80+
assert.equal(transform.deserialize('1'), true, 'we deserialize string "1" to true');
81+
assert.equal(transform.deserialize('0'), false, 'we deserialize string "0" to false');
82+
83+
assert.equal(transform.deserialize(1), true, 'we deserialize number 1 to true');
84+
assert.equal(transform.deserialize(2), false, 'we deserialize numbers greater than 1 to false');
85+
assert.equal(transform.deserialize(0), false, 'we deserialize number 0 to false');
86+
});
5487
});

tests/unit/transform/date-test.js

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,36 @@
11
import { module, test } from 'qunit';
2+
import { setupTest } from 'ember-qunit';
23

3-
import DS from 'ember-data';
4+
module('unit/transform - DateTransform', function(hooks) {
5+
setupTest(hooks);
6+
const dateString = '2015-01-01T00:00:00.000Z';
7+
const dateInMillis = Date.parse(dateString);
8+
const date = new Date(dateString);
49

5-
module('unit/transform - DS.DateTransform');
10+
test('#serialize', async function(assert) {
11+
const transform = this.owner.lookup('transform:date');
612

7-
let dateString = '2015-01-01T00:00:00.000Z';
8-
let dateInMillis = Date.parse(dateString);
9-
let date = new Date(dateString);
13+
assert.strictEqual(transform.serialize(null), null);
14+
assert.strictEqual(transform.serialize(undefined), null);
15+
assert.strictEqual(transform.serialize(new Date('invalid')), null);
1016

11-
test('#serialize', function(assert) {
12-
let transform = new DS.DateTransform();
17+
assert.equal(transform.serialize(date), dateString);
18+
});
1319

14-
assert.strictEqual(transform.serialize(null), null);
15-
assert.strictEqual(transform.serialize(undefined), null);
16-
assert.strictEqual(transform.serialize(new Date('invalid')), null);
20+
test('#deserialize', async function(assert) {
21+
const transform = this.owner.lookup('transform:date');
1722

18-
assert.equal(transform.serialize(date), dateString);
19-
});
20-
21-
test('#deserialize', function(assert) {
22-
let transform = new DS.DateTransform();
23-
24-
// from String
25-
assert.equal(transform.deserialize(dateString).toISOString(), dateString);
23+
// from String
24+
assert.equal(transform.deserialize(dateString).toISOString(), dateString);
2625

27-
// from Number
28-
assert.equal(transform.deserialize(dateInMillis).valueOf(), dateInMillis);
26+
// from Number
27+
assert.equal(transform.deserialize(dateInMillis).valueOf(), dateInMillis);
2928

30-
// from other
31-
assert.strictEqual(transform.deserialize({}), null);
29+
// from other
30+
assert.strictEqual(transform.deserialize({}), null);
3231

33-
// from none
34-
assert.strictEqual(transform.deserialize(null), null);
35-
assert.strictEqual(transform.deserialize(undefined), undefined);
32+
// from none
33+
assert.strictEqual(transform.deserialize(null), null);
34+
assert.strictEqual(transform.deserialize(undefined), undefined);
35+
});
3636
});
Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,32 @@
1-
import DS from 'ember-data';
2-
31
import { module, test } from 'qunit';
2+
import { setupTest } from 'ember-qunit';
43

5-
module('unit/transform - DS.NumberTransform');
4+
module('unit/transform - NumberTransform', function(hooks) {
5+
setupTest(hooks);
66

7-
test('#serialize', function(assert) {
8-
let transform = new DS.NumberTransform();
7+
test('#serialize', async function(assert) {
8+
const transform = this.owner.lookup('transform:number');
99

10-
assert.strictEqual(transform.serialize(null), null);
11-
assert.strictEqual(transform.serialize(undefined), null);
12-
assert.equal(transform.serialize('1.1'), 1.1);
13-
assert.equal(transform.serialize(1.1), 1.1);
14-
assert.equal(transform.serialize(new Number(1.1)), 1.1);
15-
assert.strictEqual(transform.serialize(NaN), null);
16-
assert.strictEqual(transform.serialize(Infinity), null);
17-
assert.strictEqual(transform.serialize(-Infinity), null);
18-
});
10+
assert.strictEqual(transform.serialize(null), null);
11+
assert.strictEqual(transform.serialize(undefined), null);
12+
assert.equal(transform.serialize('1.1'), 1.1);
13+
assert.equal(transform.serialize(1.1), 1.1);
14+
assert.equal(transform.serialize(new Number(1.1)), 1.1);
15+
assert.strictEqual(transform.serialize(NaN), null);
16+
assert.strictEqual(transform.serialize(Infinity), null);
17+
assert.strictEqual(transform.serialize(-Infinity), null);
18+
});
1919

20-
test('#deserialize', function(assert) {
21-
let transform = new DS.NumberTransform();
20+
test('#deserialize', async function(assert) {
21+
const transform = this.owner.lookup('transform:number');
2222

23-
assert.strictEqual(transform.deserialize(null), null);
24-
assert.strictEqual(transform.deserialize(undefined), null);
25-
assert.equal(transform.deserialize('1.1'), 1.1);
26-
assert.equal(transform.deserialize(1.1), 1.1);
27-
assert.equal(transform.deserialize(new Number(1.1)), 1.1);
28-
assert.strictEqual(transform.deserialize(NaN), null);
29-
assert.strictEqual(transform.deserialize(Infinity), null);
30-
assert.strictEqual(transform.deserialize(-Infinity), null);
23+
assert.strictEqual(transform.deserialize(null), null);
24+
assert.strictEqual(transform.deserialize(undefined), null);
25+
assert.equal(transform.deserialize('1.1'), 1.1);
26+
assert.equal(transform.deserialize(1.1), 1.1);
27+
assert.equal(transform.deserialize(new Number(1.1)), 1.1);
28+
assert.strictEqual(transform.deserialize(NaN), null);
29+
assert.strictEqual(transform.deserialize(Infinity), null);
30+
assert.strictEqual(transform.deserialize(-Infinity), null);
31+
});
3132
});
Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,26 @@
1-
import DS from 'ember-data';
2-
31
import { module, test } from 'qunit';
2+
import { setupTest } from 'ember-qunit';
43

5-
module('unit/transform - DS.StringTransform');
4+
module('unit/transform - StringTransform', function(hooks) {
5+
setupTest(hooks);
66

7-
test('#serialize', function(assert) {
8-
let transform = new DS.StringTransform();
7+
test('#serialize', async function(assert) {
8+
const transform = this.owner.lookup('transform:string');
99

10-
assert.strictEqual(transform.serialize(null), null);
11-
assert.strictEqual(transform.serialize(undefined), null);
10+
assert.strictEqual(transform.serialize(null), null);
11+
assert.strictEqual(transform.serialize(undefined), null);
1212

13-
assert.equal(transform.serialize('foo'), 'foo');
14-
assert.equal(transform.serialize(1), '1');
15-
});
13+
assert.equal(transform.serialize('foo'), 'foo');
14+
assert.equal(transform.serialize(1), '1');
15+
});
1616

17-
test('#deserialize', function(assert) {
18-
let transform = new DS.StringTransform();
17+
test('#deserialize', async function(assert) {
18+
const transform = this.owner.lookup('transform:string');
1919

20-
assert.strictEqual(transform.deserialize(null), null);
21-
assert.strictEqual(transform.deserialize(undefined), null);
20+
assert.strictEqual(transform.deserialize(null), null);
21+
assert.strictEqual(transform.deserialize(undefined), null);
2222

23-
assert.equal(transform.deserialize('foo'), 'foo');
24-
assert.equal(transform.deserialize(1), '1');
23+
assert.equal(transform.deserialize('foo'), 'foo');
24+
assert.equal(transform.deserialize(1), '1');
25+
});
2526
});

0 commit comments

Comments
 (0)