# HG changeset patch # User Axel Prel <axel.prel@xcg-consulting.fr> # Date 1681293915 -7200 # Wed Apr 12 12:05:15 2023 +0200 # Node ID d80e8273c30ed76f34ca5b3f5db4c493c6ce6d40 # Parent 15cd383232c3c77ee6b3f06d7f93b7f7d81a060f # EXP-Topic wpd-line-separator WIP unit tests separator breaking wpd diff --git a/engines/wpd/wpd_test.go b/engines/wpd/wpd_test.go --- a/engines/wpd/wpd_test.go +++ b/engines/wpd/wpd_test.go @@ -13,6 +13,21 @@ "orus.io/orus-io/rednerd/testutils" ) +func WPDSubTest(ctx context.Context, t *testing.T, para string, wpd WPD, f *os.File) { + t.Helper() + + id, err := wpd.Submit(ctx, "", []byte(para)) + require.NoError(t, err) + + rid, c, err := wpd.NextResult() + require.NoError(t, err) + assert.Equal(t, id, rid) + assert.NotZero(t, len(c)) + + _, err = f.Write(c) + require.NoError(t, err) +} + func TestRealWpd(t *testing.T) { log := testutils.GetLogger(t) p, err := wpd.NewRealProcess() @@ -24,15 +39,19 @@ wpd, err := wpd.NewProcessWPD(p, log) require.NoError(t, err) - id, err := wpd.Submit(ctx, "", []byte("<p>A small paragraph</p>")) + fileName := t.Name() + ".pdf" + require.NoError(t, os.Remove(fileName)) + f, err := os.Create(fileName) require.NoError(t, err) - rid, c, err := wpd.NextResult() - require.NoError(t, err) - assert.Equal(t, id, rid) - assert.NotZero(t, len(c)) + WPDSubTest(ctx, t, "", wpd, f) + WPDSubTest(ctx, t, "<p>A small paragraph</p>", wpd, f) + WPDSubTest(ctx, t, "\u2028", wpd, f) + //nolint:misspell + WPDSubTest(ctx, t, `SASU au capital de 7200 € Siège social : 141 RUE DE VERDUN 76600 LE HAVRE Modification au RCS de LE HAVRE 851162735 - assert.NoError(t, os.WriteFile(t.Name()+".pdf", c, 0o600)) +Par décision Assemblée Générale Extraordinaire du 08/10/2021, il a été décidé d’étendre l’objet social aux activités suivantes : Sous louer tout ou partie des lieux loués au 141 rue de verdun 76600 Le Havre pour une activité de restauration de plats à emporter ou à livrer. 
`, wpd, f) + WPDSubTest(ctx, t, "
", wpd, f) assert.NoError(t, p.Stop()) }