package test.parser.pst;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import java.text.ParseException;
import net.sf.latexdraw.models.interfaces.shape.IGroup;
import net.sf.latexdraw.models.interfaces.shape.IText;
import net.sf.latexdraw.parsers.pst.parser.PSTParser;
import org.junit.Test;
public class TestParsingPsframebox extends TestPSTParser {
@Test
public void testFrameboxWithSpecialColour() throws ParseException {
IText txt = (IText)parser.parsePSTCode("\\definecolor{color3b}{rgb}{0.7725490196078432,0.09803921568627451,0.09803921568627451}" + //$NON-NLS-1$
"\\psframebox[linewidth=0.04,doubleline=true,doublesep=0.12,fillstyle=solid,fillcolor=color3b]{coucou}").get().getShapeAt(0); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
assertTrue(txt.getText().contains("definecolor{color3b}{rgb}{")); //$NON-NLS-1$
}
@Test
public void testParse_pstribox_star() throws ParseException {
IGroup group = parser.parsePSTCode("\\pstribox*[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\pstribox*[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_pstribox() throws ParseException {
IGroup group = parser.parsePSTCode("\\pstribox[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\pstribox[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psdiabox_star() throws ParseException {
IGroup group = parser.parsePSTCode("\\psdiabox*[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psdiabox*[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psdiabox() throws ParseException {
IGroup group = parser.parsePSTCode("\\psdiabox[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psdiabox[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psovalbox_star() throws ParseException {
IGroup group = parser.parsePSTCode("\\psovalbox*[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psovalbox*[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psovalbox() throws ParseException {
IGroup group = parser.parsePSTCode("\\psovalbox[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psovalbox[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_pscirclebox_star() throws ParseException {
IGroup group = parser.parsePSTCode("\\pscirclebox*[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\pscirclebox*[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_pscirclebox() throws ParseException {
IGroup group = parser.parsePSTCode("\\pscirclebox[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\pscirclebox[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psshadowbox_star() throws ParseException {
IGroup group = parser.parsePSTCode("\\psshadowbox*[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psshadowbox*[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psshadowbox() throws ParseException {
IGroup group = parser.parsePSTCode("\\psshadowbox[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psshadowbox[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testBug911816() throws ParseException {
// https://bugs.launchpad.net/latexdraw/+bug/911816
IGroup group = parser.parsePSTCode("\\psframebox{$E=mc^2$}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psframebox{$E=mc^2$}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psframebox() throws ParseException {
IGroup group = parser.parsePSTCode("\\psframebox[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psframebox[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psdblframebox() throws ParseException {
IGroup group = parser.parsePSTCode("\\psdblframebox{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psdblframebox{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psframebox_star() throws ParseException {
IGroup group = parser.parsePSTCode("\\psframebox*[doubleline=true]{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psframebox*[doubleline=true]{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Test
public void testParse_psdblframebox_star() throws ParseException {
IGroup group = parser.parsePSTCode("\\psdblframebox*{\\psframe(0,1)}").get(); //$NON-NLS-1$
assertEquals(1, group.size());
assertTrue(group.getShapeAt(0) instanceof IText);
IText text = ((IText)group.getShapeAt(0));
assertEquals("\\psdblframebox*{\\psframe(0,1)}", text.getText()); //$NON-NLS-1$
assertTrue(PSTParser.errorLogs().isEmpty());
}
@Override
public String getCommandName() {
return ""; //$NON-NLS-1$
}
@Override
public String getBasicCoordinates() {
return ""; //$NON-NLS-1$
}
}