Skip to content

Commit 93ae251

Browse files
committed
Adress review comments; part of #207
1 parent 3fe4908 commit 93ae251

File tree

1 file changed

+38
-33
lines changed

1 file changed

+38
-33
lines changed

test/issue207.js

Lines changed: 38 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,57 @@
1-
21
var tape = require('tape');
32
var mjAPI = require("../lib/main.js");
43
var jsdom = require('jsdom').jsdom;
54

65
tape('Generate dummy speechText', function(t) {
7-
t.plan(6);
6+
t.plan(9);
87
mjAPI.start();
9-
var input1 = 'x';
10-
var input2 = '<math display="block" alttext="hello"><mi>x</mi></math>';
11-
var expected = 'hello';
12-
// basic text
8+
var input1 = 'source';
9+
var input2 = '<math display="block" alttext="alttext"><mi>x</mi></math>';
10+
var input3 = '<math display="block"><mi>x</mi></math>';
11+
var expected1 = 'source';
12+
var expected2 = 'alttext';
13+
var expected3 = 'Equation';
14+
var desc1 = 'source';
15+
var desc2 = 'original MathML alttext';
16+
var desc3 = 'default dummy value';
17+
18+
mjSpeechTest = function(data, expected, desc) {
19+
var document = jsdom(data.html).defaultView.document;
20+
var element = document.querySelector('.MJXc-display');
21+
var actual = element.getAttribute('aria-label');
22+
t.equal(actual, expected, 'HTML output contains speechText from ' + desc);
23+
document = jsdom(data.mml).defaultView.document;
24+
element = document.querySelector('math');
25+
actual = element.getAttribute('alttext');
26+
t.equal(actual, expected, 'MathML output contains speechText from ' + desc);
27+
document = jsdom(data.svg).defaultView.document;
28+
var desc = document.querySelector('desc');
29+
t.equal(actual, desc.innerHTML,
30+
'SVG output contains speechText from ' + desc);
31+
};
32+
33+
// TeX source
1334
mjAPI.typeset({
1435
math: input1,
1536
format: "TeX",
1637
html: true,
1738
svg: true,
1839
mml: true
19-
}, function(data) {
20-
var document = jsdom(data.html).defaultView.document;
21-
var element = document.querySelector('.MJXc-display');
22-
var result = element.getAttribute('aria-label');
23-
t.equal(result, input1, 'HTML output contains dummy speechText');
24-
var document = jsdom(data.mml).defaultView.document;
25-
var element = document.querySelector('math');
26-
var result = element.getAttribute('alttext');
27-
t.equal(result, input1, 'MathML output contains dummy speechText');
28-
var document = jsdom(data.svg).defaultView.document;
29-
var desc = document.querySelector('desc');
30-
t.equal(result, desc.innerHTML, 'SVG output contains dummy speechText');
31-
});
32-
40+
}, function(data) {mjSpeechTest(data, expected1, desc1)});
41+
// MathML alttext
3342
mjAPI.typeset({
3443
math: input2,
3544
format: "MathML",
3645
html: true,
3746
svg: true,
3847
mml: true
39-
}, function(data) {
40-
var document = jsdom(data.html).defaultView.document;
41-
var element = document.querySelector('.MJXc-display');
42-
var result = element.getAttribute('aria-label');
43-
t.equal(result, expected, 'HTML output from MathML contains original speechText');
44-
var document = jsdom(data.mml).defaultView.document;
45-
var element = document.querySelector('math');
46-
var result = element.getAttribute('alttext');
47-
t.equal(result, expected, 'MathML output from MathML contains original dummy speechText');
48-
var document = jsdom(data.svg).defaultView.document;
49-
var desc = document.querySelector('desc');
50-
t.equal(expected, desc.innerHTML, 'SVG output from MathML contains original dummy speechText');
51-
});
48+
}, function(data) {mjSpeechTest(data, expected2, desc2)});
49+
// MathML without alttext
50+
mjAPI.typeset({
51+
math: input3,
52+
format: "MathML",
53+
html: true,
54+
svg: true,
55+
mml: true
56+
}, function(data) {mjSpeechTest(data, expected3, desc3)});
5257
});

0 commit comments

Comments
 (0)