Skip to content

Commit

Permalink
Add test for bug #1457
Browse files Browse the repository at this point in the history
  • Loading branch information
stefan-kolb committed May 30, 2016
1 parent 886136d commit 21f8c8e
Showing 1 changed file with 62 additions and 59 deletions.
121 changes: 62 additions & 59 deletions src/test/java/net/sf/jabref/logic/layout/format/RTFCharsTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,95 +2,98 @@

import net.sf.jabref.logic.layout.LayoutFormatter;

import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;

public class RTFCharsTest {
private LayoutFormatter formatter;

@Test
public void testBasicFormat() {
@Before
public void setUp() {
formatter = new RTFChars();
}

LayoutFormatter layout = new RTFChars();
@After
public void tearDown() {
formatter = null;
}

Assert.assertEquals("", layout.format(""));
@Test
public void testBasicFormat() {
Assert.assertEquals("", formatter.format(""));

Assert.assertEquals("hallo", layout.format("hallo"));
Assert.assertEquals("hallo", formatter.format("hallo"));

// We should be able to replace the ? with e
Assert.assertEquals("R\\u233?flexions sur le timing de la quantit\\u233?",
layout.format("Réflexions sur le timing de la quantité"));
formatter.format("Réflexions sur le timing de la quantité"));

Assert.assertEquals("h\\u225allo", layout.format("h\\'allo"));
Assert.assertEquals("h\\u225allo", layout.format("h\\'allo"));
Assert.assertEquals("h\\u225allo", formatter.format("h\\'allo"));
Assert.assertEquals("h\\u225allo", formatter.format("h\\'allo"));
}

@Test
public void testLaTeXHighlighting() {
Assert.assertEquals("{\\i hallo}", formatter.format("\\emph{hallo}"));
Assert.assertEquals("{\\i hallo}", formatter.format("{\\emph hallo}"));
Assert.assertEquals("{An article title with {\\i a book title} emphasized", formatter.format("An article title with \\emph{a book title} emphasized"));

LayoutFormatter layout = new RTFChars();

Assert.assertEquals("{\\i hallo}", layout.format("\\emph{hallo}"));
Assert.assertEquals("{\\i hallo}", layout.format("{\\emph hallo}"));

Assert.assertEquals("{\\i hallo}", layout.format("\\textit{hallo}"));
Assert.assertEquals("{\\i hallo}", layout.format("{\\textit hallo}"));
Assert.assertEquals("{\\i hallo}", formatter.format("\\textit{hallo}"));
Assert.assertEquals("{\\i hallo}", formatter.format("{\\textit hallo}"));

Assert.assertEquals("{\\b hallo}", layout.format("\\textbf{hallo}"));
Assert.assertEquals("{\\b hallo}", layout.format("{\\textbf hallo}"));
Assert.assertEquals("{\\b hallo}", formatter.format("\\textbf{hallo}"));
Assert.assertEquals("{\\b hallo}", formatter.format("{\\textbf hallo}"));
}

@Test
@Ignore
public void testComplicated() {
LayoutFormatter layout = new RTFChars();

Assert.assertEquals("R\\u233eflexions sur le timing de la quantit\\u233e \\u230ae should be \\u230ae",
layout.format("Réflexions sur le timing de la quantité \\ae should be æ"));
formatter.format("Réflexions sur le timing de la quantité \\ae should be æ"));

Assert.assertEquals("h\\u225all{\\uc2\\u339oe}", layout.format("h\\'all\\oe "));
Assert.assertEquals("h\\u225all{\\uc2\\u339oe}", formatter.format("h\\'all\\oe "));
}

@Test
@Ignore
public void testSpecialCharacters() {

LayoutFormatter layout = new RTFChars();

Assert.assertEquals("\\u243o", layout.format("\\'{o}")); // ó
Assert.assertEquals("\\'f2", layout.format("\\`{o}")); // ò
Assert.assertEquals("\\'f4", layout.format("\\^{o}")); // ô
Assert.assertEquals("\\'f6", layout.format("\\\"{o}")); // ö
Assert.assertEquals("\\u245o", layout.format("\\~{o}")); // õ
Assert.assertEquals("\\u333o", layout.format("\\={o}"));
Assert.assertEquals("\\u334O", layout.format("\\u{o}"));
Assert.assertEquals("\\u231c", layout.format("\\c{c}")); // ç
Assert.assertEquals("{\\uc2\\u339oe}", layout.format("\\oe"));
Assert.assertEquals("{\\uc2\\u338OE}", layout.format("\\OE"));
Assert.assertEquals("{\\uc2\\u230ae}", layout.format("\\ae")); // æ
Assert.assertEquals("{\\uc2\\u198AE}", layout.format("\\AE")); // Æ

Assert.assertEquals("", layout.format("\\.{o}")); // ???
Assert.assertEquals("", layout.format("\\v{o}")); // ???
Assert.assertEquals("", layout.format("\\H{a}")); // ã // ???
Assert.assertEquals("", layout.format("\\t{oo}"));
Assert.assertEquals("", layout.format("\\d{o}")); // ???
Assert.assertEquals("", layout.format("\\b{o}")); // ???
Assert.assertEquals("", layout.format("\\aa")); // å
Assert.assertEquals("", layout.format("\\AA")); // Å
Assert.assertEquals("", layout.format("\\o")); // ø
Assert.assertEquals("", layout.format("\\O")); // Ø
Assert.assertEquals("", layout.format("\\l"));
Assert.assertEquals("", layout.format("\\L"));
Assert.assertEquals("{\\uc2\\u223ss}", layout.format("\\ss")); // ß
Assert.assertEquals("", layout.format("?`")); // ¿
Assert.assertEquals("", layout.format("!`")); // ¡

Assert.assertEquals("", layout.format("\\dag"));
Assert.assertEquals("", layout.format("\\ddag"));
Assert.assertEquals("", layout.format("\\S")); // §
Assert.assertEquals("", layout.format("\\P")); // ¶
Assert.assertEquals("", layout.format("\\copyright")); // ©
Assert.assertEquals("", layout.format("\\pounds")); // £
Assert.assertEquals("\\u243o", formatter.format("\\'{o}")); // ó
Assert.assertEquals("\\'f2", formatter.format("\\`{o}")); // ò
Assert.assertEquals("\\'f4", formatter.format("\\^{o}")); // ô
Assert.assertEquals("\\'f6", formatter.format("\\\"{o}")); // ö
Assert.assertEquals("\\u245o", formatter.format("\\~{o}")); // õ
Assert.assertEquals("\\u333o", formatter.format("\\={o}"));
Assert.assertEquals("\\u334O", formatter.format("\\u{o}"));
Assert.assertEquals("\\u231c", formatter.format("\\c{c}")); // ç
Assert.assertEquals("{\\uc2\\u339oe}", formatter.format("\\oe"));
Assert.assertEquals("{\\uc2\\u338OE}", formatter.format("\\OE"));
Assert.assertEquals("{\\uc2\\u230ae}", formatter.format("\\ae")); // æ
Assert.assertEquals("{\\uc2\\u198AE}", formatter.format("\\AE")); // Æ

Assert.assertEquals("", formatter.format("\\.{o}")); // ???
Assert.assertEquals("", formatter.format("\\v{o}")); // ???
Assert.assertEquals("", formatter.format("\\H{a}")); // ã // ???
Assert.assertEquals("", formatter.format("\\t{oo}"));
Assert.assertEquals("", formatter.format("\\d{o}")); // ???
Assert.assertEquals("", formatter.format("\\b{o}")); // ???
Assert.assertEquals("", formatter.format("\\aa")); // å
Assert.assertEquals("", formatter.format("\\AA")); // Å
Assert.assertEquals("", formatter.format("\\o")); // ø
Assert.assertEquals("", formatter.format("\\O")); // Ø
Assert.assertEquals("", formatter.format("\\l"));
Assert.assertEquals("", formatter.format("\\L"));
Assert.assertEquals("{\\uc2\\u223ss}", formatter.format("\\ss")); // ß
Assert.assertEquals("", formatter.format("?`")); // ¿
Assert.assertEquals("", formatter.format("!`")); // ¡

Assert.assertEquals("", formatter.format("\\dag"));
Assert.assertEquals("", formatter.format("\\ddag"));
Assert.assertEquals("", formatter.format("\\S")); // §
Assert.assertEquals("", formatter.format("\\P")); // ¶
Assert.assertEquals("", formatter.format("\\copyright")); // ©
Assert.assertEquals("", formatter.format("\\pounds")); // £
}
}

0 comments on commit 21f8c8e

Please # to comment.