File size: 1,937 Bytes
af6912c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
describe("Title", function () {
	var abcTitleNormal = "X:1\n" +
	"T:Not Transformed\n" +
	"K:C\n" +
	"C";

	var expectedTitleNormal = "Not Transformed"

	var abcTitleThe = "X:1\n" +
	"T:Transformed, The\n" +
	"K:C\n" +
	"C";

	var expectedTitleThe = "The Transformed"

	var abcTitleThe2 = "X:1\n" +
	"T:Transformed,the\n" +
	"K:C\n" +
	"C";

	var expectedTitleThe2 = "The Transformed"

	var abcTitleA = "X:1\n" +
	"T:Transformed, A\n" +
	"K:C\n" +
	"C";

	var expectedTitleA = "A Transformed"

	var abcTitleAn = "X:1\n" +
	"T:Transformed, An\n" +
	"K:C\n" +
	"C";

	var expectedTitleAn = "An Transformed"

	var abcTitleA2 = "X:1\n" +
	"T:Transformed,  a\n" +
	"K:C\n" +
	"C";

	var expectedTitleA2 = "A Transformed"

	var abcTitleNumberThe = "X:1\n" +
	"T:24. Number Transform, The\n" +
	"K:C\n" +
	"C";

	var expectedTitleNumberThe = "24. The Number Transform"

	var abcTitleNumberA = "X:1\n" +
	"T:24. Number Transform, A\n" +
	"K:C\n" +
	"C";

	var expectedTitleNumberA = "24. A Number Transform"

	var abcTitleMalformed = "X:1\n" +
	"T:Mal , The Formed\n" +
	"K:C\n" +
	"C";

	var expectedTitleMalformed = "Mal , The Formed"

	it("puts 'the' at the front of the title", function () {
		testTitle(abcTitleNormal, expectedTitleNormal, "TitleNormal");
		testTitle(abcTitleThe, expectedTitleThe, "TitleThe");
		testTitle(abcTitleThe2, expectedTitleThe2, "TitleThe2");
		testTitle(abcTitleA, expectedTitleA, "TitleA");
		testTitle(abcTitleAn, expectedTitleAn, "TitleAn");
		testTitle(abcTitleA2, expectedTitleA2, "TitleA2");
		testTitle(abcTitleNumberThe, expectedTitleNumberThe, "TitleNumberThe");
		testTitle(abcTitleNumberA, expectedTitleNumberA, "TitleNumberA");
		testTitle(abcTitleMalformed, expectedTitleMalformed, "TitleMalformed");
	})

	function testTitle(abc, expected, comment) {
		var visualObj = abcjs.renderAbc("*", abc);
		var title = visualObj[0].metaText.title
		chai.assert.equal(title, expected, ": "+comment);

	}
})