X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit-internal%2Futc-Dali-Text-Markup.cpp;h=779eb566762f5fafcb888d2167447638dd979bd7;hp=23f7e510de1db0febabaada7f7a7d75264b8ebf5;hb=610495b8647d1a25c98bf0773ccc0dd6d1996263;hpb=f4c1e7f52d49c3ce033b9ee4c3c7414b06a22d45 diff --git a/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Markup.cpp b/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Markup.cpp old mode 100644 new mode 100755 index 23f7e51..779eb56 --- a/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Markup.cpp +++ b/automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Markup.cpp @@ -22,7 +22,7 @@ #include #include -#include +#include #include #include #include @@ -36,6 +36,7 @@ using namespace Text; namespace { + /////////////////////////////////////////////////////////// struct TokenComparisonData @@ -166,6 +167,45 @@ namespace return true; } + /////////////////////////////////////////////////////////// + + + struct XHTMLEntityToUTF8Data + { + std::string description; + std::string xHTMLEntityString; + std::string expectedString; + }; + + bool XHTMLEntityToUTF8Test( const XHTMLEntityToUTF8Data& data ) + { + std::cout << " testing " << data.description << std::endl; + + Vector colorRuns; + Vector fontRuns; + Vector items; + MarkupProcessData markupProcessData( colorRuns, fontRuns, items ); + ProcessMarkupString( data.xHTMLEntityString, markupProcessData ); + + for( Vector::Iterator it = items.Begin(), + endIt = items.End(); + it != endIt; + ++it ) + { + EmbeddedItem& item = *it; + delete[] item.url; + } + items.Clear(); + + if( markupProcessData.markupProcessedText != data.expectedString ) + { + std::cout << " different output string : " << markupProcessData.markupProcessedText << ", expected : " << data.expectedString << " " << std::endl; + return false; + } + + return true; + } + } // namespace int UtcDaliTextTokenComparison(void) @@ -451,3 +491,54 @@ int UtcDaliTextVector2ToString(void) tet_result(TET_PASS); END_TEST; } + +int UtcDaliTextXHTMLEntityToUTF8(void) +{ + tet_infoline(" UtcDaliTextXHTMLEntityToUTF8"); + const XHTMLEntityToUTF8Data data[] = + { + { + "Text Without XHTML Entity", + "Checking XHTML Entitities", + "Checking XHTML Entitities" + }, + { + "Text With XHTML Entity in Numeric form", + "Checking Numeric Entitities & ' < > ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å æ Ç È É Ê Ë Ì Í Î Ï ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ý þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω … € ← ↑ → ↓ ↔ ← → ∀ ∃ ∇ ∏ ∑ ∧ ∨ ∫ ≠ ≡ ⊕ ⊥ † ‡ • ", + "Checking Numeric Entitities & ' < > ¡ ¢ £ ¤ Â¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å æ Ç È É Ê Ë Ì Í Î Ï ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ý þ ß à á â ã ä Ã¥ æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω … € ← ↑ → ↓ ↔ ← → ∀ ∃ ∇ ∏ ∑ ∧ ∨ ∫ ≠ ≡ ⊕ ⊥ † ‡ • " + }, + { + "Text With XHTML Named Entities", + "Checking Named Entitities & ' < > ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å æ Ç È É Ê Ë Ì Í Î Ï ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ý þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω … € ← ↑ → ↓ ↔ ← → ∀ ∃ ∇ ∏ ∑ ∧ ∨ ∫ ≠ ≡ ⊕ ⊥ † ‡ • ", + "Checking Named Entitities & ' < > ¡ ¢ £ ¤ Â¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å æ Ç È É Ê Ë Ì Í Î Ï ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ý þ ß à á â ã ä Ã¥ æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω … € ← ↑ → ↓ ↔ ← → ∀ ∃ ∇ ∏ ∑ ∧ ∨ ∫ ≠ ≡ ⊕ ⊥ † ‡ • " + }, + { + "Testing of < special character", + "Testing of < special character", + "Testing of " + }, + { + "Testing of & special character", + "Testing of & special character", + "Testing of " + }, + { + "Testing of & < > special character", + "Testing of \\& \\< \\> special character", + "Testing of & < > special character" + } + }; + const unsigned int numberOfTests = 6u; + + for( unsigned int index = 0u; index < numberOfTests; ++index ) + { + ToolkitTestApplication application; + if( !XHTMLEntityToUTF8Test( data[index] ) ) + { + tet_result(TET_FAIL); + } + } + + tet_result(TET_PASS); + END_TEST; +}