@@ -41,165 +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
- // TODO DEVSIX-1124
83
- ConvertAndCompare ( sourceFolder + "hello_paragraph_table.html" , destinationFolder + "hello_paragraph_table.pdf"
84
- , sourceFolder + "cmp_hello_paragraph_table.pdf" , destinationFolder , "diff02_" ) ;
67
+ ConvertToPdfAndCompare ( "hello_paragraph_table" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
85
68
}
86
69
87
70
[ NUnit . Framework . Test ]
88
71
public virtual void HelloMalformedDocumentTest ( ) {
89
- ConvertAndCompare ( sourceFolder + "hello_malformed.html" , destinationFolder + "hello_malformed.pdf" , sourceFolder
90
- + "cmp_hello_malformed.pdf" , destinationFolder , "diff03_" ) ;
72
+ ConvertToPdfAndCompare ( "hello_malformed" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
91
73
}
92
74
93
75
[ NUnit . Framework . Test ]
94
76
public virtual void HelloParagraphJunkSpacesDocumentTest ( ) {
95
- ConvertAndCompare ( sourceFolder + "hello_paragraph_junk_spaces.html" , destinationFolder + "hello_paragraph_junk_spaces.pdf"
96
- , sourceFolder + "cmp_hello_paragraph_junk_spaces.pdf" , destinationFolder , "diff03_" ) ;
77
+ ConvertToPdfAndCompare ( "hello_paragraph_junk_spaces" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
97
78
}
98
79
99
80
[ NUnit . Framework . Test ]
100
81
public virtual void HelloParagraphNestedInTableDocumentTest ( ) {
101
- // TODO DEVSIX-1124
102
- ConvertAndCompare ( sourceFolder + "hello_paragraph_nested_in_table.html" , destinationFolder + "hello_paragraph_nested_in_table.pdf"
103
- , sourceFolder + "cmp_hello_paragraph_nested_in_table.pdf" , destinationFolder , "diff03_" ) ;
82
+ ConvertToPdfAndCompare ( "hello_paragraph_nested_in_table" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
104
83
}
105
84
106
85
[ NUnit . Framework . Test ]
107
86
public virtual void HelloParagraphWithSpansDocumentTest ( ) {
108
- ConvertAndCompare ( sourceFolder + "hello_paragraph_with_span.html" , destinationFolder + "hello_paragraph_with_span.pdf"
109
- , sourceFolder + "cmp_hello_paragraph_with_span.pdf" , destinationFolder , "diff03_" ) ;
87
+ ConvertToPdfAndCompare ( "hello_paragraph_with_span" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
110
88
}
111
89
112
90
[ NUnit . Framework . Test ]
113
91
public virtual void HelloDivDocumentTest ( ) {
114
- ConvertAndCompare ( sourceFolder + "hello_div.html" , destinationFolder + "hello_div.pdf" , sourceFolder + "cmp_hello_div.pdf"
115
- , destinationFolder , "diff03_" ) ;
92
+ ConvertToPdfAndCompare ( "hello_div" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
116
93
}
117
94
118
95
[ NUnit . Framework . Test ]
119
96
public virtual void ABlockInPTagTest ( ) {
120
- ConvertAndCompare ( sourceFolder + "aBlockInPTag.html" , destinationFolder + "aBlockInPTag.pdf" , sourceFolder
121
- + "cmp_aBlockInPTag.pdf" , destinationFolder , "diff03_" ) ;
97
+ ConvertToPdfAndCompare ( "aBlockInPTag" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
122
98
}
123
99
124
100
[ NUnit . Framework . Test ]
125
101
public virtual void Base64svgTest ( ) {
126
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "objectTag_base64svg.html" ) , new FileInfo ( destinationFolder
127
- + "objectTag_base64svg.pdf" ) ) ;
128
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "objectTag_base64svg.pdf"
129
- , sourceFolder + "cmp_objectTag_base64svg.pdf" , destinationFolder , "diff01_" ) ) ;
102
+ ConvertToPdfAndCompare ( "objectTag_base64svg" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
130
103
}
131
104
132
105
[ NUnit . Framework . Test ]
133
106
[ LogMessage ( iText . StyledXmlParser . Logs . StyledXmlParserLogMessageConstant . UNABLE_TO_RETRIEVE_STREAM_WITH_GIVEN_BASE_URI
134
107
, Count = 1 ) ]
135
108
[ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER , Count = 1 ) ]
136
109
public virtual void HtmlObjectIncorrectBase64Test ( ) {
137
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "objectTag_incorrectBase64svg.html" ) , new FileInfo (
138
- destinationFolder + "objectTag_incorrectBase64svg.pdf" ) ) ;
139
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "objectTag_incorrectBase64svg.pdf"
140
- , sourceFolder + "cmp_objectTag_incorrectBase64svg.pdf" , destinationFolder , "diff01_" ) ) ;
110
+ ConvertToPdfAndCompare ( "objectTag_incorrectBase64svg" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
141
111
}
142
112
143
113
[ NUnit . Framework . Test ]
114
+ //TODO: update after DEVSIX-1346
144
115
[ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_IT_S_TEXT_CONTENT , Count = 1 ) ]
145
116
[ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER , Count = 2 ) ]
146
117
public virtual void HtmlObjectAltTextTest ( ) {
147
- //update after DEVSIX-1346
148
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "objectTag_altText.html" ) , new FileInfo ( destinationFolder
149
- + "objectTag_altText.pdf" ) ) ;
150
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "objectTag_altText.pdf"
151
- , sourceFolder + "cmp_objectTag_altText.pdf" , destinationFolder , "diff01_" ) ) ;
118
+ ConvertToPdfAndCompare ( "objectTag_altText" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
152
119
}
153
120
154
121
[ NUnit . Framework . Test ]
155
122
[ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER , Count = 1 ) ]
156
123
public virtual void HtmlObjectNestedObjectTest ( ) {
157
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "objectTag_nestedTag.html" ) , new FileInfo ( destinationFolder
158
- + "objectTag_nestedTag.pdf" ) ) ;
159
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "objectTag_nestedTag.pdf"
160
- , sourceFolder + "cmp_objectTag_nestedTag.pdf" , destinationFolder , "diff01_" ) ) ;
161
- }
162
-
163
- [ NUnit . Framework . Test ]
164
- [ LogMessage ( iText . StyledXmlParser . Logs . StyledXmlParserLogMessageConstant . RULE_IS_NOT_SUPPORTED , Ignore = true
165
- ) ]
166
- [ LogMessage ( Html2PdfLogMessageConstant . CSS_PROPERTY_IN_PERCENTS_NOT_SUPPORTED , Ignore = true ) ]
167
- [ LogMessage ( Html2PdfLogMessageConstant . PADDING_VALUE_IN_PERCENT_NOT_SUPPORTED , Ignore = true ) ]
168
- [ LogMessage ( Html2PdfLogMessageConstant . MARGIN_VALUE_IN_PERCENT_NOT_SUPPORTED , Ignore = true ) ]
169
- [ LogMessage ( Html2PdfLogMessageConstant . ERROR_PARSING_CSS_SELECTOR , Ignore = true ) ]
170
- [ LogMessage ( iText . IO . Logs . IoLogMessageConstant . WIDOWS_CONSTRAINT_VIOLATED , Ignore = true ) ]
171
- public virtual void BatchConversionTest ( ) {
172
- ConverterProperties properties = new ConverterProperties ( ) . SetBaseUri ( sourceFolder ) . SetMediaDeviceDescription
173
- ( new MediaDeviceDescription ( MediaType . PRINT ) ) ;
174
- FontProvider fontProvider = new DefaultFontProvider ( true , false , false ) ;
175
- fontProvider . AddDirectory ( sourceFolder + "fonts/" ) ;
176
- properties . SetFontProvider ( fontProvider ) ;
177
- IHtmlProcessor processor = new DefaultHtmlProcessor ( properties ) ;
178
- IXmlParser parser = new JsoupHtmlParser ( ) ;
179
- String outPdfPath = destinationFolder + "smashing1.pdf" ;
180
- PdfDocument pdfDocument = new PdfDocument ( new PdfWriter ( outPdfPath ) ) ;
181
- IDocumentNode doc = parser . Parse ( new FileStream ( sourceFolder + "smashing01.html" , FileMode . Open , FileAccess . Read
182
- ) , properties . GetCharset ( ) ) ;
183
- Document document = processor . ProcessDocument ( doc , pdfDocument ) ;
184
- document . Close ( ) ;
185
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( outPdfPath , sourceFolder + "cmp_smashing1.pdf"
186
- , destinationFolder , "diff01_" ) ) ;
124
+ ConvertToPdfAndCompare ( "objectTag_nestedTag" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
187
125
}
188
126
189
127
[ NUnit . Framework . Test ]
190
128
public virtual void HtmlImgBase64SVGTest ( ) {
191
- HtmlConverter . ConvertToPdf ( new FileInfo ( sourceFolder + "imgTag_base64svg.html" ) , new FileInfo ( destinationFolder
192
- + "imgTag_base64svg.pdf" ) ) ;
193
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( destinationFolder + "imgTag_base64svg.pdf"
194
- , sourceFolder + "cmp_imgTag_base64svg.pdf" , destinationFolder , "diff01_" ) ) ;
195
- }
196
-
197
- private void ConvertAndCompare ( String srcFilename , String outFilename , String cmpFilename , String outFolder
198
- , String diff ) {
199
- HtmlConverter . ConvertToPdf ( new FileInfo ( srcFilename ) , new FileInfo ( outFilename ) ) ;
200
- System . Console . Out . WriteLine ( "html: " + UrlUtil . GetNormalizedFileUriString ( srcFilename ) + "\n " ) ;
201
- NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( outFilename , cmpFilename , outFolder , diff
202
- ) ) ;
129
+ ConvertToPdfAndCompare ( "imgTag_base64svg" , SOURCE_FOLDER , DESTINATION_FOLDER ) ;
203
130
}
204
131
}
205
132
}
0 commit comments