mirror of
https://github.com/octoleo/plantuml.git
synced 2024-11-22 21:15:09 +00:00
Fix SimpleSequenceDiagramTest by using the appropriate StringBounderDebug
This commit is contained in:
parent
4b9abcdb63
commit
0d6a17a27e
@ -52,6 +52,7 @@ import net.sourceforge.plantuml.png.MetadataTag;
|
|||||||
import net.sourceforge.plantuml.security.SFile;
|
import net.sourceforge.plantuml.security.SFile;
|
||||||
import net.sourceforge.plantuml.svg.SvgGraphics;
|
import net.sourceforge.plantuml.svg.SvgGraphics;
|
||||||
import net.sourceforge.plantuml.ugraphic.UFont;
|
import net.sourceforge.plantuml.ugraphic.UFont;
|
||||||
|
import net.sourceforge.plantuml.ugraphic.debug.StringBounderDebug;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Format for output files generated by PlantUML.
|
* Format for output files generated by PlantUML.
|
||||||
@ -141,6 +142,9 @@ public enum FileFormat {
|
|||||||
if (this == SVG) {
|
if (this == SVG) {
|
||||||
return getSvgStringBounder(charSizeHack);
|
return getSvgStringBounder(charSizeHack);
|
||||||
}
|
}
|
||||||
|
if (this == DEBUG) {
|
||||||
|
return new StringBounderDebug();
|
||||||
|
}
|
||||||
return getNormalStringBounder();
|
return getNormalStringBounder();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -410,7 +410,8 @@ public class SequenceDiagram extends UmlDiagram {
|
|||||||
@Override
|
@Override
|
||||||
public int getNbImages() {
|
public int getNbImages() {
|
||||||
try {
|
try {
|
||||||
return getSequenceDiagramPngMaker(1, new FileFormatOption(FileFormat.PNG)).getNbPages();
|
// The DEBUG StringBounder is ok just to compute the number of pages here.
|
||||||
|
return getSequenceDiagramPngMaker(1, new FileFormatOption(FileFormat.DEBUG)).getNbPages();
|
||||||
} catch (Throwable t) {
|
} catch (Throwable t) {
|
||||||
t.printStackTrace();
|
t.printStackTrace();
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -37,12 +37,13 @@ package net.sourceforge.plantuml.ugraphic.debug;
|
|||||||
import java.awt.geom.Dimension2D;
|
import java.awt.geom.Dimension2D;
|
||||||
|
|
||||||
import net.sourceforge.plantuml.Dimension2DDouble;
|
import net.sourceforge.plantuml.Dimension2DDouble;
|
||||||
import net.sourceforge.plantuml.graphic.StringBounder;
|
import net.sourceforge.plantuml.graphic.StringBounderRaw;
|
||||||
import net.sourceforge.plantuml.ugraphic.UFont;
|
import net.sourceforge.plantuml.ugraphic.UFont;
|
||||||
|
|
||||||
public class StringBounderDebug implements StringBounder {
|
public class StringBounderDebug extends StringBounderRaw {
|
||||||
|
|
||||||
public Dimension2D calculateDimension(UFont font, String text) {
|
@Override
|
||||||
|
protected Dimension2D calculateDimensionInternal(UFont font, String text) {
|
||||||
final double size = font.getSize2D();
|
final double size = font.getSize2D();
|
||||||
final double height = size;
|
final double height = size;
|
||||||
final double width = size * text.length();
|
final double width = size * text.length();
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package demo1;
|
package demo1;
|
||||||
|
|
||||||
import static org.junit.jupiter.api.Assertions.*;
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -33,10 +33,7 @@ class SimpleSequenceDiagramTest {
|
|||||||
final String desc = new String(baos.toByteArray(), "UTF-8");
|
final String desc = new String(baos.toByteArray(), "UTF-8");
|
||||||
|
|
||||||
final String expected = getExpectedResult();
|
final String expected = getExpectedResult();
|
||||||
// assertEquals(expected, desc);
|
assertEquals(expected, desc);
|
||||||
// We simplify this test until we understand why an OS dependant
|
|
||||||
// StringBounder is used here.
|
|
||||||
assertTrue(desc.startsWith("DPI: 96"));
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -52,22 +49,22 @@ class SimpleSequenceDiagramTest {
|
|||||||
"DPI: 96", //
|
"DPI: 96", //
|
||||||
"", //
|
"", //
|
||||||
"LINE:", //
|
"LINE:", //
|
||||||
" pt1: 29;41", //
|
" pt1: 49;38", //
|
||||||
" pt2: 29;91", //
|
" pt2: 49;85", //
|
||||||
" stroke: 5.0-5.0-1.0", //
|
" stroke: 5.0-5.0-1.0", //
|
||||||
" shadow: 0", //
|
" shadow: 0", //
|
||||||
" color: ffa80036", //
|
" color: ffa80036", //
|
||||||
"", //
|
"", //
|
||||||
"LINE:", //
|
"LINE:", //
|
||||||
" pt1: 84;41", //
|
" pt1: 138;38", //
|
||||||
" pt2: 84;91", //
|
" pt2: 138;85", //
|
||||||
" stroke: 5.0-5.0-1.0", //
|
" stroke: 5.0-5.0-1.0", //
|
||||||
" shadow: 0", //
|
" shadow: 0", //
|
||||||
" color: ffa80036", //
|
" color: ffa80036", //
|
||||||
"", //
|
"", //
|
||||||
"RECTANGLE:", //
|
"RECTANGLE:", //
|
||||||
" pt1: 5;5", //
|
" pt1: 5;5", //
|
||||||
" pt2: 49;36", //
|
" pt2: 89;33", //
|
||||||
" xCorner: 0", //
|
" xCorner: 0", //
|
||||||
" yCorner: 0", //
|
" yCorner: 0", //
|
||||||
" stroke: 0.0-0.0-1.5", //
|
" stroke: 0.0-0.0-1.5", //
|
||||||
@ -83,8 +80,8 @@ class SimpleSequenceDiagramTest {
|
|||||||
" color: ffa80036", //
|
" color: ffa80036", //
|
||||||
"", //
|
"", //
|
||||||
"RECTANGLE:", //
|
"RECTANGLE:", //
|
||||||
" pt1: 5;90", //
|
" pt1: 5;84", //
|
||||||
" pt2: 49;122", //
|
" pt2: 89;112", //
|
||||||
" xCorner: 0", //
|
" xCorner: 0", //
|
||||||
" yCorner: 0", //
|
" yCorner: 0", //
|
||||||
" stroke: 0.0-0.0-1.5", //
|
" stroke: 0.0-0.0-1.5", //
|
||||||
@ -94,14 +91,14 @@ class SimpleSequenceDiagramTest {
|
|||||||
"", //
|
"", //
|
||||||
"TEXT:", //
|
"TEXT:", //
|
||||||
" text: Alice", //
|
" text: Alice", //
|
||||||
" position: 12;108", //
|
" position: 12;101", //
|
||||||
" orientation: 0", //
|
" orientation: 0", //
|
||||||
" font: SansSerif.plain/14 []", //
|
" font: SansSerif.plain/14 []", //
|
||||||
" color: ffa80036", //
|
" color: ffa80036", //
|
||||||
"", //
|
"", //
|
||||||
"RECTANGLE:", //
|
"RECTANGLE:", //
|
||||||
" pt1: 63;5", //
|
" pt1: 108;5", //
|
||||||
" pt2: 102;36", //
|
" pt2: 164;33", //
|
||||||
" xCorner: 0", //
|
" xCorner: 0", //
|
||||||
" yCorner: 0", //
|
" yCorner: 0", //
|
||||||
" stroke: 0.0-0.0-1.5", //
|
" stroke: 0.0-0.0-1.5", //
|
||||||
@ -111,14 +108,14 @@ class SimpleSequenceDiagramTest {
|
|||||||
"", //
|
"", //
|
||||||
"TEXT:", //
|
"TEXT:", //
|
||||||
" text: Bob", //
|
" text: Bob", //
|
||||||
" position: 70;22", //
|
" position: 115;22", //
|
||||||
" orientation: 0", //
|
" orientation: 0", //
|
||||||
" font: SansSerif.plain/14 []", //
|
" font: SansSerif.plain/14 []", //
|
||||||
" color: ffa80036", //
|
" color: ffa80036", //
|
||||||
"", //
|
"", //
|
||||||
"RECTANGLE:", //
|
"RECTANGLE:", //
|
||||||
" pt1: 63;90", //
|
" pt1: 108;84", //
|
||||||
" pt2: 102;122", //
|
" pt2: 164;112", //
|
||||||
" xCorner: 0", //
|
" xCorner: 0", //
|
||||||
" yCorner: 0", //
|
" yCorner: 0", //
|
||||||
" stroke: 0.0-0.0-1.5", //
|
" stroke: 0.0-0.0-1.5", //
|
||||||
@ -128,35 +125,36 @@ class SimpleSequenceDiagramTest {
|
|||||||
"", //
|
"", //
|
||||||
"TEXT:", //
|
"TEXT:", //
|
||||||
" text: Bob", //
|
" text: Bob", //
|
||||||
" position: 70;108", //
|
" position: 115;101", //
|
||||||
" orientation: 0", //
|
" orientation: 0", //
|
||||||
" font: SansSerif.plain/14 []", //
|
" font: SansSerif.plain/14 []", //
|
||||||
" color: ffa80036", //
|
" color: ffa80036", //
|
||||||
"", //
|
"", //
|
||||||
"POLYGON:", //
|
"POLYGON:", //
|
||||||
" points:", //
|
" points:", //
|
||||||
" - 72;69", //
|
" - 126;63", //
|
||||||
" - 82;73", //
|
" - 136;67", //
|
||||||
" - 72;77", //
|
" - 126;71", //
|
||||||
" - 76;73", //
|
" - 130;67", //
|
||||||
" stroke: 0.0-0.0-1.0", //
|
" stroke: 0.0-0.0-1.0", //
|
||||||
" shadow: 0", //
|
" shadow: 0", //
|
||||||
" color: ffa80036", //
|
" color: ffa80036", //
|
||||||
" backcolor: ffa80036", //
|
" backcolor: ffa80036", //
|
||||||
"", //
|
"", //
|
||||||
"LINE:", //
|
"LINE:", //
|
||||||
" pt1: 29;73", //
|
" pt1: 49;67", //
|
||||||
" pt2: 78;73", //
|
" pt2: 132;67", //
|
||||||
" stroke: 0.0-0.0-1.0", //
|
" stroke: 0.0-0.0-1.0", //
|
||||||
" shadow: 0", //
|
" shadow: 0", //
|
||||||
" color: ffa80036", //
|
" color: ffa80036", //
|
||||||
"", //
|
"", //
|
||||||
"TEXT:", //
|
"TEXT:", //
|
||||||
" text: Hello", //
|
" text: Hello", //
|
||||||
" position: 36;65", //
|
" position: 56;62", //
|
||||||
" orientation: 0", //
|
" orientation: 0", //
|
||||||
" font: SansSerif.plain/13 []", //
|
" font: SansSerif.plain/13 []", //
|
||||||
" color: ffa80036");
|
" color: ffa80036" //
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private String packString(String... list) {
|
private String packString(String... list) {
|
||||||
|
Loading…
Reference in New Issue
Block a user