-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore(tests): Verify unicode tag content can be handled correctly
- Loading branch information
1 parent
d0846a8
commit 38aacc4
Showing
493 changed files
with
122,633 additions
and
0 deletions.
There are no files selected for viewing
73 changes: 73 additions & 0 deletions
73
src/test/java/com/github/olivergondza/saxeed/UnicodeTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
package com.github.olivergondza.saxeed; | ||
|
||
import com.github.olivergondza.saxeed.internal.CharChunk; | ||
import org.junit.jupiter.api.Test; | ||
import org.junit.jupiter.params.ParameterizedTest; | ||
import org.junit.jupiter.params.provider.MethodSource; | ||
|
||
import java.io.ByteArrayOutputStream; | ||
import java.io.IOException; | ||
import java.nio.file.Files; | ||
import java.nio.file.Path; | ||
import java.util.stream.Stream; | ||
|
||
import static org.junit.jupiter.api.Assertions.assertEquals; | ||
import static org.junit.jupiter.api.Assertions.assertTrue; | ||
|
||
/** | ||
* Verify we can process unicode in chars correctly. | ||
*/ | ||
class UnicodeTest { | ||
|
||
@ParameterizedTest | ||
@MethodSource("unicode") | ||
void roundtrip(Path input) throws IOException { | ||
ByteArrayOutputStream baos = new ByteArrayOutputStream(); | ||
|
||
new Saxeed().addTransformation(new TransformationBuilder(), baos) | ||
.setInput(input) | ||
.transform() | ||
; | ||
|
||
assertEquals( | ||
normalizeEntities(Files.readString(input).trim()), | ||
baos.toString() | ||
); | ||
} | ||
|
||
@ParameterizedTest | ||
@MethodSource("unicode") | ||
void parsableChars(Path input) throws IOException { | ||
String plain = normalizeEntities(Files.readString(input).trim()); | ||
|
||
ByteArrayOutputStream baos = new ByteArrayOutputStream(); | ||
|
||
class Visitor implements UpdatingVisitor { | ||
@Override | ||
public void chars(Tag.Chars tag, CharChunk chars) { | ||
// Verify that the chunk of characters is not chopped inside unicode character | ||
assertTrue(plain.contains(chars.get())); | ||
} | ||
} | ||
|
||
TransformationBuilder tb = new TransformationBuilder() | ||
.add(Subscribed.toAll(), new Visitor()) | ||
; | ||
|
||
new Saxeed().addTransformation(tb, baos) | ||
.setInput(input) | ||
.transform() | ||
; | ||
} | ||
|
||
static String normalizeEntities(String in) { | ||
return in.replace("&", "&") | ||
.replace("<", "<") | ||
; | ||
} | ||
|
||
static Stream<Path> unicode() throws IOException { | ||
Path root = Path.of("src/test/resources/unicode"); | ||
return Files.list(root); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,250 @@ | ||
<html lang="cri" dir="ltr" data-code="007" data-iso6393="cri"> | ||
<head> | ||
<title>Sãotomense</title> | ||
</head> | ||
<body> | ||
<h1>Declaraçón Universal di Dirêtu di Hómé</h1> | ||
<header> | ||
<h2>Pleâmbulo</h2> | ||
<p>Punda dignidade di tudo nguê di mundu e dirêtu d'inem igual e andeji cu a na pô bêndê fa sá stê di liberdade, di justiça e di paz ni mundu;</p> | ||
<p>Punda fata di conheximentu e displêzu di dirêtu di hómé plovocá atu di malvadez cu ca revoltá cunxença di tudu hómé di mundu e punda ua mundu cu tudu nguê ca pô sa livli, pê pô flá e pê pô quêlê ni cuá cuê mêssê, sê mendu e sê miséria, fô ploclamadu cuma cuá maxi importanti cu hómé inventá;</p> | ||
<p>Punda ploteçón di dirêtu di hómé baseado ni ua ligime di dirêtu sá importante lumadu, pa hómé na sá obligado utilizá, cuma ultimu recurso, livolta contla tirania e opressón;</p> | ||
<p>Punda ê sá importante lumadu conselhá disenvolvimentu di amizade entre tudu téla;</p> | ||
<p>Punda ni Cata, tudu pôvô di Naçón Unida ploclamá ôtlô vê, fé d'inen ni dirêtu di hómé cu di muala e nen declará cuma nen sá lesovido melhorá ploglesso social pa tudu nguê tê milhó vida ni ua liberdade maxi nglandji;</p> | ||
<p>Punda tudu Estado memblu xiná complomissu cuma nen ca ba plomovê, ni cooperaçón cu Organizaçón di Naçón Unida, lispêtu universal e efetivo di dirêtu di hómé e di liberdade maxi importanti;</p> | ||
<p>Punda ua mêma conceçón di nen dirêtu cu liberdade sé sa importanti lumadu pa pô cumpli complomisso sé:</p> | ||
<p>Assembleia Geral</p> | ||
<p>Ca ploclamá Declaraçón Universal di Dirêtu di Hómé sé cuma ua cuá buá pa tudu pôvô cu téla di mundu pô fé, pa tudu nguê cu tudu organizaçón di téla, pô na txilé ni cabeça fa, fé tudu cuá cu nen cá pôji, pá melhorá ensino cu educaçón, disenvolvê lispêtu di dirêtu cu liberdade, tlabá pa pô concê e pa pô platicá tudu cuá sé ni tudu Estado memblu e ni téla cu naxi tê dependenxa fa.</p> | ||
</header> | ||
<article data-number="1"> | ||
<h2>Artigo 1º</h2> | ||
<p>Tudu nguê di mundu ca nancê livli e igual ni dignidade e ni dirêtu. Punda nen ca pensá e nen tê cunxensa, selá nen fé tudu cuá cu tençón de lumón.</p> | ||
</article> | ||
<article data-number="2"> | ||
<h2>Artigo 2º</h2> | ||
<p>Tudu nguê ca pô flá ni dirêtu cu liberdade cu sa ploclamadu ni Declaraçón sé, sê distinçón, mó fala di laça, di côlô, di sexo, di lungua, di religiôn, di pensamento político ô ôtlo, di natureza di téla ô di sociedade, di liqueza, di naximentu ô qualqué ôtlo situaçón.</p> | ||
<p>Alén di cuá sé, a na ca pô fé nê ua separaçón baseado ni estatuto político, jurídico ô di téla di qualqué nguê, mêmu xi téla sé conquistá dependenxa zá ô xi ê naxi tê fa.</p> | ||
</article> | ||
<article data-number="3"> | ||
<h2>Artigo 3º</h2> | ||
<p>Tudu nguê tê dirêtu di vida, di liberdade e di segurança pessoal.</p> | ||
</article> | ||
<article data-number="4"> | ||
<h2>Artigo 4º</h2> | ||
<p>Nê ua nguê ca pô vivê ni esclavatura fa; esclavatura cu bendê ô coplá esclavo sá ploibido.</p> | ||
</article> | ||
<article data-number="5"> | ||
<h2>Artigo 5º</h2> | ||
<p>Nê ua nguê na ca pô sê tlatadu cu clueldade e sê cloçón fa.</p> | ||
</article> | ||
<article data-number="6"> | ||
<h2>Artigo 6º</h2> | ||
<p>Tudu nguê tê dirêtu pa tlaté cu justiça ni tudu lugué</p> | ||
</article> | ||
<article data-number="7"> | ||
<h2>Artigo 7º</h2> | ||
<p>Tudu ngué sá igual pê cumpli lei di téla e selá lei sé plotêgê tudu nguê sê fé distinçón. Selá tudu nguê sá plotegido sê distinçón contla qualqué cuá cu sá contla Declaraçón sé e contla tudu cuá cu cá plovocá mali sé.</p> | ||
</article> | ||
<article data-number="8"> | ||
<h2>Artigo 8º</h2> | ||
<p>Tudu nguê tê dirêtu di lecolê ni stluviçu di téla dê, contla qualqué situaçón cu ca violá dirêtu maxi importanti cu sá ni Constituiçón e ni lei.</p> | ||
</article> | ||
<article data-number="9"> | ||
<h2>Artigo 9º</h2> | ||
<p>Nê ua nguê na ca pô sá plesu fa e a na ca pô mandá ni ua nguê ba ôtlo téla sê motivo fa.</p> | ||
</article> | ||
<article data-number="10"> | ||
<h2>Artigo 10º</h2> | ||
<p>Tudu nguê tê mêmu dirêtu ni tlibunal, cu tocá tlatá tudu cuá di nguê sé cu justiça, sê plijudiqué di qualqué modo.</p> | ||
</article> | ||
<article data-number="11"> | ||
<h2>Artigo 11º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê cu sá cusado di fé qualqué cuá sá nôcentxi antê cu a ca julgué publicamente ni tlibunal e selá a dé possibilidade pê pô dêfêndê ubuê dê contla cusaçón sé.</p> | ||
</li> | ||
<li> | ||
<p>A na ca pô condená ua nguê fa, xi ni momento cuê fé mali, pena cu ca castigá mali sé na sá esclito ni livlu di justiça di telá dê ô ni livlu di justiça internacional. A na ca pô dé ua castigo maxi pesado fa, xi ni djá cuê fé mali, pena sé maxi pesado na tava sén fa.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="12"> | ||
<h2>Artigo 12º</h2> | ||
<p>A na ca pô incomodá sê motivo ua nguê ni vida dê fa, ni familia dê fa, ni ké dê fa, ni cata dê fa, e a na ca pô toqué ni honra nê reputaçón dê fa. Selá lei di telá dê plotegê contla tudu mali sé.</p> | ||
</article> | ||
<article data-number="13"> | ||
<h2>Artigo 13º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di ndá e coiê ké dê n'dentlu di téla dê.</p> | ||
</li> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di xê di téla andji ê sá nê, di téla dê tudaxi, e ê tê dirêtu di bilá ba téla dê ola ê mêssê.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="14"> | ||
<h2>Artigo 14º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê cu sá plesseguido ni ua téla ê tê dirêtu di ploculá ploteçón ni ôtlo téla, e ê sá obligado pa dé ploteçón.</p> | ||
</li> | ||
<li> | ||
<p>Maji dirêtu sé na ca valê fa xi qualqué nguê cometê ua clime ô xi ê na lispetá tudu mandamento di Naçón Unida fa.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="15"> | ||
<h2>Artigo 15º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di tê ua nacionalidade.</p> | ||
</li> | ||
<li> | ||
<p>A na ca pô txilá ua nguê nacionalidade dê fa nê obligué mudá nacionalidade dê fa.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="16"> | ||
<h2>Artigo 16º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu hómé cu muala tê dirêtu di casá e di flomá familia, ola cu nen ca tê daji, sê piá laça, nacionalidade ô religión. Tudu nen tê mêmu dirêtu, ola nen sá casadu e ola casá ca blagá.</p> | ||
</li> | ||
<li> | ||
<p>A na ca pô obligá hómé cu muala casá fa.</p> | ||
</li> | ||
<li> | ||
<p>Familia sá base di tudu sociedade e ê tê dirêtu di ploteçón di sociedade e di Estado.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="17"> | ||
<h2>Artigo 17º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê, xi ê sá êlê tan ô zuntadu cu ôtlo nguê, tê dirêtu di propriedade.</p> | ||
</li> | ||
<li> | ||
<p>A na ca pô txilá sê motivo qualqué bén di ua nguê fa.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="18"> | ||
<h2>Artigo 18º</h2> | ||
<p>Tudu nguê tê dirêtu di pensamento, di cunxença e di religión; dirêtu sé ca implicá liberdade di mudá di religión ô di conviçón, liberdade di manifestá religión ô conviçón, ua nguê tan ô zuntado cu ôtlo nguê, publicamente ô non, ni tudu cuá di telá.</p> | ||
</article> | ||
<article data-number="19"> | ||
<h2>Artigo 19º</h2> | ||
<p>Tudu nguê tê dirêtu di liberdade di opinión e di flá. A na ca pô plijudicá nê ua nguê fa punda ê manifestá opinión dê e ê ca pô goló, lêcêbê e uangá , ni qualqué xitu cuê mêssê, tudu pensamentu dê, tudu ideia dê, modo cu ê mêssê.</p> | ||
</article> | ||
<article data-number="20"> | ||
<h2>Artigo 20º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di liberdade di reunión e di associaçón.</p> | ||
</li> | ||
<li> | ||
<p>A na ca pô obligá ne ua nguê di fé patxi de ua associaçón fá.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="21"> | ||
<h2>Artigo 21º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di participá ni tudu assunto di tela dê, ê pô sa êlê mé ô ê ca pô mandá ua nguê cuê mêssê.</p> | ||
</li> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di lutá ni tudu situaçón di estado di téla dê.</p> | ||
</li> | ||
<li> | ||
<p>Vonté di povo sá base de autoridade di podê di Estado, vonté sé ca manifestá ni elêçón livli e justu cu ca realizá cu data mlacado zá ni lei baseado ni voto secleto e cu tudu nguê tê liberdade di voto.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="22"> | ||
<h2>Artigo 22º</h2> | ||
<p>Tudu nguê, cuma ê sá memblo di sociedade, ê tê dirêtu di tê segurança social. Andeji ê tê dirêtu di pidji pê gózá di dirêtu económico, social e cultural glaça a saclifiçu di tudu nguê di téla dê, e di coperaçón internacional.</p> | ||
</article> | ||
<article data-number="23"> | ||
<h2>Artigo 23º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di tlabá, di côiê tlabá cuê mêssê e di tudu ploteçon pa na txilé di sluviçu fa.</p> | ||
</li> | ||
<li> | ||
<p>Tudu nguê sê discliminaçón cu cá fé ua casta di stluviçu, tudu nguê sé, tê ua migida di gêlo sé mé.</p> | ||
</li> | ||
<li> | ||
<p>Tudu nguê cu ca tlabá selá ê lêcêbê gêlu cu ca dá pê vivê baleladu cu familia dê sê passá afliçón.</p> | ||
</li> | ||
<li> | ||
<p>Tudu nguê cu mêssê, tê dirêtu di juntá glupu cu otlô nguê pá fundá sindicato di dêfendê interesse di glupo sé.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="24"> | ||
<h2>Artigo 24º.</h2> | ||
<p>Tudu nguê tê dirêtu di descanso, e gozá félia tudu anu, e óla cu é ca lentlá félia sé, selá patlón ô estado pagué vencimento.</p> | ||
</article> | ||
<article data-number="25"> | ||
<h2>Artigo 25º.</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di tê vida baleladu pê pô gozá di saôji êlê cu familia dê, tê cumé, lôpa, ké, dôtôlô cu minjan. Ê tê dirêtu di segurança social, óla ê sá sê stluviçu, ni duentxi, xi ê sôflê acidente, xi ê bilá vé ô n'ôtlô situaçón cu na ca dé meio pê pô vivê, contla vonté dê.</p> | ||
</li> | ||
<li> | ||
<p>Maternidade cu mina piquina tê dirêtu di zuda cu assistência. Tudu mina piquina mêmu cu na sá mina di hómé ô muala casadu fa, tê dirêtu di ploteçón social.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="26"> | ||
<h2>Artigo 26º.</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di educaçón. Estado tocá pagá ensino básico da tudu nguê. Ensino básico sá obligatório. Ensino técnico cu profissional tocá zisti ni tudu xitu e tudu nguê cu mêssê fé cursu superior selá déssé xi ê tê condiçón pê fê.</p> | ||
</li> | ||
<li> | ||
<p>Selá educaçón contribui pa desenvolvimento di hómé, lefoçá dirêtu cu liberdade maxi importanti di hómé sé. Andeji ê tocá fé tudu cuá pa zisti complençón, tolerância cu amizade entre tudu naçón cu tudu laça ô religión, e desenvolvimento di tudu cuá cu Naçón Unida ca fé pa tudu nguê tê paz.</p> | ||
</li> | ||
<li> | ||
<p>Tudu pé só ca coiê quê tipu de educaçón cu sa milhó pa mina dê.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="27"> | ||
<h2>Artigo 27º</h2> | ||
<ol> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di participá ni cultura di región dê, ni desenvolvimento científico e luclá cuê.</p> | ||
</li> | ||
<li> | ||
<p>Tudu nguê tê dirêtu di proteçón di interesse moral e material di tudu tlabá científico, literário e artístico cuê fé.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="28"> | ||
<h2>Artigo 28º</h2> | ||
<p>Tudu nguê tê dirêtu di fé pa zisti, ni plano social cu ni plano internacional, ua modo di dirêtu e liberdade cu sá ni Declaraçón sé, sá cuá vedé.</p> | ||
</article> | ||
<article data-number="29"> | ||
<h2>Artigo 29º</h2> | ||
<ol> | ||
<li> | ||
<p>Qualqué ngué tê obligaçón ni glupu dê, e xi ê na sa ni glupu sé fa, ê na ca desenvolvê fa.</p> | ||
</li> | ||
<li> | ||
<p>Óla qualqué nguê ca gozá dirêtu cu liberdade, selá ê cumpli lei pa plomovê lispêtu di dirêtu cu di liberdade d'ôtlo nguê, pa moral, lei di govenu e gozo geral ni democracia sá cuá vedé.</p> | ||
</li> | ||
<li> | ||
<p>Tudu dirêtu cu liberdade sé na ca pô zisti contla vonté di Naçón Unida.</p> | ||
</li> | ||
</ol> | ||
</article> | ||
<article data-number="30"> | ||
<h2>Artigo 30º</h2> | ||
<p>Tudu cuá cu sá ni Declaraçón sé na ca pô plimiti qualqué Estado, glupu ô nguê di fé qualqué cuá cu ca pô plijudicá tudu dirêtu cu liberdade cu sá ni ducumento sé.</p> | ||
</article> | ||
</body> | ||
</html> |
Oops, something went wrong.