-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.spec.js
48 lines (33 loc) · 1.37 KB
/
index.spec.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
const assert = require('assert');
const markup = require('./');
describe('markup', () => {
it('should generate markup', () => {
const chatcode = '[&AgFuLgEA]';
const actual = markup(chatcode);
assert.equal(actual, '<div data-armory-embed="items" data-armory-ids="77422"></div>');
});
it('should use custom tag', () => {
const chatcode = '[&CvUbAAA=]';
const actual = markup(chatcode, { tag: 'span' });
assert.equal(actual, '<span data-armory-embed="skins" data-armory-ids="7157"></span>');
});
it('should return invalid text if invalid', () => {
const chatcode = '&AgGuLgEK]';
const actual = markup(chatcode);
assert.equal(actual, '[invalid]');
});
it('should pass through extra as attributes', () => {
const chatcode = '[&CvUbAAA=]';
const attributes = { 'data-armory-blank-text': 'cool', class: 'gw2' };
const actual = markup(chatcode, { attributes });
assert.equal(
actual,
'<div data-armory-embed="skins" data-armory-ids="7157" data-armory-blank-text="cool" class="gw2"></div>',
);
});
it('should support complex chat codes', () => {
const chatcode = '[&AgFzPADg3g4AAJaVAAAkuwAA]';
const actual = markup(chatcode);
assert.equal(actual, '<div data-armory-embed="items" data-armory-ids="15475" data-armory-15475-skin="3806" data-armory-15475-upgrades="38294,47908"></div>');
});
});