@@ -41,163 +41,92 @@ source product.
41
41
42
42
*/
43
43
using System ;
44
- using System . IO ;
45
- using iText . Html2pdf . Attach ;
46
- using iText . Html2pdf . Attach . Impl ;
47
44
using iText . Html2pdf . Logs ;
48
- using iText . Html2pdf . Resolver . Font ;
49
- using iText . IO . Util ;
50
- using iText . Kernel . Pdf ;
51
- using iText . Kernel . Utils ;
52
- using iText . Layout ;
53
- using iText . Layout . Font ;
54
- using iText . StyledXmlParser ;
55
- using iText . StyledXmlParser . Css . Media ;
56
- using iText . StyledXmlParser . Node ;
57
- using iText . StyledXmlParser . Node . Impl . Jsoup ;
58
- using iText . Test ;
59
45
using iText . Test . Attributes ;
60
46
61
47
namespace iText . Html2pdf {
62
- public class Html2PdfTest : ExtendedITextTest {
63
- public static readonly String sourceFolder = iText . Test . TestUtil . GetParentProjectDirectory ( NUnit . Framework . TestContext
48
+ public class Html2PdfTest : ExtendedHtmlConversionITextTest {
49
+ public static readonly String SOURCE_FOLDER = iText . Test . TestUtil . GetParentProjectDirectory ( NUnit . Framework . TestContext
64
50
. CurrentContext . TestDirectory ) + "/resources/itext/html2pdf/Html2PdfTest/" ;
65
51
66
- public static readonly String destinationFolder = NUnit . Framework . TestContext . CurrentContext . TestDirectory
52
+ public static readonly String DESTINATION_FOLDER = NUnit . Framework . TestContext . CurrentContext . TestDirectory
67
53
+ "/test/itext/html2pdf/Html2PdfTest/" ;
68
54
69
55
[ NUnit . Framework . OneTimeSetUp ]
70
56
public static void BeforeClass ( ) {
71
- CreateDestinationFolder ( destinationFolder ) ;
57
+ CreateOrClearDestinationFolder ( DESTINATION_FOLDER ) ;
72
58
}
73
59
74
60
[ NUnit . Framework . Test ]
75
61
public virtual void HelloWorldParagraphTest ( ) {
76
- ConvertAndCompare ( sourceFolder + "hello_paragraph.html" , destinationFolder + "hello_paragraph.pdf" , sourceFolder
77
- + "cmp_hello_paragraph.pdf" , destinationFolder , "diff01_" ) ;
62
+ ConvertToPdfAndCompare ( "hello_paragraph" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
78
63
}
79
64
80
65
[ NUnit . Framework . Test ]
81
66
public virtual void HelloParagraphTableTest ( ) {
82
- ConvertAndCompare ( sourceFolder + "hello_paragraph_table.html" , destinationFolder + "hello_paragraph_table.pdf"
83
- , sourceFolder + "cmp_hello_paragraph_table.pdf" , destinationFolder , "diff02_" ) ;
67
+ ConvertToPdfAndCompare ( "hello_paragraph_table" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
84
68
}
85
69
86
70
[ NUnit . Framework . Test ]
87
71
public virtual void HelloMalformedDocumentTest ( ) {
88
- ConvertAndCompare ( sourceFolder + "hello_malformed.html" , destinationFolder + "hello_malformed.pdf" , sourceFolder
89
- + "cmp_hello_malformed.pdf" , destinationFolder , "diff03_" ) ;
72
+ ConvertToPdfAndCompare ( "hello_malformed" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
90
73
}
91
74
92
75
[ NUnit . Framework . Test ]
93
76
public virtual void HelloParagraphJunkSpacesDocumentTest ( ) {
94
- ConvertAndCompare ( sourceFolder + "hello_paragraph_junk_spaces.html" , destinationFolder + "hello_paragraph_junk_spaces.pdf"
95
- , sourceFolder + "cmp_hello_paragraph_junk_spaces.pdf" , destinationFolder , "diff03_" ) ;
77
+ ConvertToPdfAndCompare ( "hello_paragraph_junk_spaces" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
96
78
}
97
79
98
80
[ NUnit . Framework . Test ]
99
81
public virtual void HelloParagraphNestedInTableDocumentTest ( ) {
100
- ConvertAndCompare ( sourceFolder + "hello_paragraph_nested_in_table.html" , destinationFolder + "hello_paragraph_nested_in_table.pdf"
101
- , sourceFolder + "cmp_hello_paragraph_nested_in_table.pdf" , destinationFolder , "diff03_" ) ;
82
+ ConvertToPdfAndCompare ( "hello_paragraph_nested_in_table" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
102
83
}
103
84
104
85
[ NUnit . Framework . Test ]
105
86
public virtual void HelloParagraphWithSpansDocumentTest ( ) {
106
- ConvertAndCompare ( sourceFolder + "hello_paragraph_with_span.html" , destinationFolder + "hello_paragraph_with_span.pdf"
107
- , sourceFolder + "cmp_hello_paragraph_with_span.pdf" , destinationFolder , "diff03_" ) ;
87
+ ConvertToPdfAndCompare ( "hello_paragraph_with_span" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
108
88
}
109
89
110
90
[ NUnit . Framework . Test ]
111
91
public virtual void HelloDivDocumentTest ( ) {
112
- ConvertAndCompare ( sourceFolder + "hello_div.html" , destinationFolder + "hello_div.pdf" , sourceFolder + "cmp_hello_div.pdf"
113
- , destinationFolder , "diff03_" ) ;
92
+ ConvertToPdfAndCompare ( "hello_div" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
114
93
}
115
94
116
95
[ NUnit . Framework . Test ]
117
96
public virtual void ABlockInPTagTest ( ) {
118
- ConvertAndCompare ( sourceFolder + "aBlockInPTag.html" , destinationFolder + "aBlockInPTag.pdf" , sourceFolder
119
- + "cmp_aBlockInPTag.pdf" , destinationFolder , "diff03_" ) ;
97
+ ConvertToPdfAndCompare ( "aBlockInPTag" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
120
98
}
121
99
122
100
[ NUnit . Framework . Test ]
123
101
public virtual void Base64svgTest ( ) {
124
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "objectTag_base64svg.html" ) , new FileInfo ( destinationFolder
125
- + "objectTag_base64svg.pdf" ) ) ;
126
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "objectTag_base64svg.pdf"
127
- , sourceFolder + "cmp_objectTag_base64svg.pdf" , destinationFolder , "diff01_" ) ) ;
102
+ ConvertToPdfAndCompare ( "objectTag_base64svg" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
128
103
}
129
104
130
105
[ NUnit . Framework . Test ]
131
106
[ LogMessage ( iText . StyledXmlParser . Logs . StyledXmlParserLogMessageConstant . UNABLE_TO_RETRIEVE_STREAM_WITH_GIVEN_BASE_URI
132
107
, Count = 1 ) ]
133
108
[ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER , Count = 1 ) ]
134
109
public virtual void HtmlObjectIncorrectBase64Test ( ) {
135
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "objectTag_incorrectBase64svg.html" ) , new FileInfo (
136
- destinationFolder + "objectTag_incorrectBase64svg.pdf" ) ) ;
137
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "objectTag_incorrectBase64svg.pdf"
138
- , sourceFolder + "cmp_objectTag_incorrectBase64svg.pdf" , destinationFolder , "diff01_" ) ) ;
110
+ ConvertToPdfAndCompare ( "objectTag_incorrectBase64svg" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
139
111
}
140
112
141
113
[ NUnit . Framework . Test ]
114
+ //TODO: update after DEVSIX-1346
142
115
[ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_IT_S_TEXT_CONTENT , Count = 1 ) ]
143
116
[ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER , Count = 2 ) ]
144
117
public virtual void HtmlObjectAltTextTest ( ) {
145
- //update after DEVSIX-1346
146
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "objectTag_altText.html" ) , new FileInfo ( destinationFolder
147
- + "objectTag_altText.pdf" ) ) ;
148
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "objectTag_altText.pdf"
149
- , sourceFolder + "cmp_objectTag_altText.pdf" , destinationFolder , "diff01_" ) ) ;
118
+ ConvertToPdfAndCompare ( "objectTag_altText" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
150
119
}
151
120
152
121
[ NUnit . Framework . Test ]
153
122
[ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER , Count = 1 ) ]
154
123
public virtual void HtmlObjectNestedObjectTest ( ) {
155
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "objectTag_nestedTag.html" ) , new FileInfo ( destinationFolder
156
- + "objectTag_nestedTag.pdf" ) ) ;
157
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "objectTag_nestedTag.pdf"
158
- , sourceFolder + "cmp_objectTag_nestedTag.pdf" , destinationFolder , "diff01_" ) ) ;
159
- }
160
-
161
- [ NUnit . Framework . Test ]
162
- [ LogMessage ( iText . StyledXmlParser . Logs . StyledXmlParserLogMessageConstant . RULE_IS_NOT_SUPPORTED , Ignore = true
163
- ) ]
164
- [ LogMessage ( Html2PdfLogMessageConstant . CSS_PROPERTY_IN_PERCENTS_NOT_SUPPORTED , Ignore = true ) ]
165
- [ LogMessage ( Html2PdfLogMessageConstant . PADDING_VALUE_IN_PERCENT_NOT_SUPPORTED , Ignore = true ) ]
166
- [ LogMessage ( Html2PdfLogMessageConstant . MARGIN_VALUE_IN_PERCENT_NOT_SUPPORTED , Ignore = true ) ]
167
- [ LogMessage ( Html2PdfLogMessageConstant . ERROR_PARSING_CSS_SELECTOR , Ignore = true ) ]
168
- [ LogMessage ( iText . IO . Logs . IoLogMessageConstant . WIDOWS_CONSTRAINT_VIOLATED , Ignore = true ) ]
169
- public virtual void BatchConversionTest ( ) {
170
- ConverterProperties properties = new ConverterProperties ( ) . SetBaseUri ( sourceFolder ) . SetMediaDeviceDescription
171
- ( new MediaDeviceDescription ( MediaType . PRINT ) ) ;
172
- FontProvider fontProvider = new DefaultFontProvider ( true , false , false ) ;
173
- fontProvider . AddDirectory ( sourceFolder + "fonts/" ) ;
174
- properties . SetFontProvider ( fontProvider ) ;
175
- IHtmlProcessor processor = new DefaultHtmlProcessor ( properties ) ;
176
- IXmlParser parser = new JsoupHtmlParser ( ) ;
177
- String outPdfPath = destinationFolder + "smashing1.pdf" ;
178
- PdfDocument pdfDocument = new PdfDocument ( new PdfWriter ( outPdfPath ) ) ;
179
- IDocumentNode doc = parser . Parse ( new FileStream ( sourceFolder + "smashing01.html" , FileMode . Open , FileAccess . Read
180
- ) , properties . GetCharset ( ) ) ;
181
- Document document = processor . ProcessDocument ( doc , pdfDocument ) ;
182
- document . Close ( ) ;
183
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( outPdfPath , sourceFolder + "cmp_smashing1.pdf"
184
- , destinationFolder , "diff01_" ) ) ;
124
+ ConvertToPdfAndCompare ( "objectTag_nestedTag" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
185
125
}
186
126
187
127
[ NUnit . Framework . Test ]
188
128
public virtual void HtmlImgBase64SVGTest ( ) {
189
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "imgTag_base64svg.html" ) , new FileInfo ( destinationFolder
190
- + "imgTag_base64svg.pdf" ) ) ;
191
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "imgTag_base64svg.pdf"
192
- , sourceFolder + "cmp_imgTag_base64svg.pdf" , destinationFolder , "diff01_" ) ) ;
193
- }
194
-
195
- private void ConvertAndCompare ( String srcFilename , String outFilename , String cmpFilename , String outFolder
196
- , String diff ) {
197
- HtmlConverter . ConvertToPdf ( new FileInfo ( srcFilename ) , new FileInfo ( outFilename ) ) ;
198
- System . Console . Out . WriteLine ( "html: " + UrlUtil . GetNormalizedFileUriString ( srcFilename ) + "\n " ) ;
199
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( outFilename , cmpFilename , outFolder , diff
200
- ) ) ;
129
+ ConvertToPdfAndCompare ( "imgTag_base64svg" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
201
130
}
202
131
}
203
132
}
0 commit comments