Skip to content

Commit

Permalink
New test cases
Browse files Browse the repository at this point in the history
  • Loading branch information
Baptiste Jamin committed Jul 15, 2024
1 parent d92d420 commit 9ba93ac
Show file tree
Hide file tree
Showing 4 changed files with 61 additions and 1 deletion.
19 changes: 18 additions & 1 deletion lib/regex.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ class RegexList {
/^[0-9]{2}:[0-9]{2}(.*)[0-9]{4}(.*)\"( *)<(.*)>( *):$/, // HH:II, DATE, NAME <EMAIL>:
/^(.*)[0-9]{4}(.*)from(.*)<(.*)>:$/,
/^-{1,10} ?(O|o)riginal (M|m)essage ?-{1,10}$/i,
/^-{1,10} ?(O|o)prindelig (B|b)esked ?-{1,10}$/i,
/^-{1,10} ?(M|m)essage d\'origine ?-{1,10}$/i
]);

this.signatureRegex = this.buildRe2([
Expand All @@ -40,19 +42,34 @@ class RegexList {
/^\+{2,4}$/, // Separator
/^\={2,4}$/, // Separator
/^________________________________$/, // Separator

// EN
/^Sent from (?:\s*.+)$/, // en
/^Get Outlook for (?:\s*.+).*/m, // en
/^Cheers,?!?$/mi, // en
/^Best wishes,?!?$/mi, // en
/^\w{0,20}\s?(\sand\s)?Regards,?!??$/mi, //en

// DE
/^Von (?:\s*.+) gesendet$/, // de

// DA
/^Sendt fra (?:\s*.+)$/, // da

// FR
/^Envoyé depuis (?:\s*.+)$/, //fr
/^Envoyé de mon (?:\s*.+)$/, // fr - e.g. Envoyé de mon iPhone
/^Envoyé à partir de (?:\s*.+)$/, //fr
/^Télécharger Outlook pour (?:\s*.+).*/m, // fr
/^Bien . vous,?!?$/mi, // fr
/^\w{0,20}\s?cordialement,?!?$/mi, // fr
/^Bonne (journ.e|soir.e)!?$/mi, // fr
/^Enviado desde (?:\s*.+)$/, // es

// ES
/^Enviado desde (?:\s*.+)$/, // es,

// NL
/^Verzonden vanaf (?:\s*.+)$/, // nl - e.g. Verzonden vanaf Outlook voor Android<https://aka.ms/12345>
]);
}

Expand Down
11 changes: 11 additions & 0 deletions test/fixtures/email_danish_dash_separator.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
Fusce bibendum, quam hendrerit sagittis tempor, dui turpis tempus erat, pharetra sodales ante sem sit amet metus.
Nulla malesuada, orci non vulputate lobortis, massa felis pharetra ex, convallis consectetur ex libero eget ante.
Nam vel turpis posuere, rhoncus ligula in, venenatis orci. Duis interdum venenatis ex a rutrum.
Duis ut libero eu lectus consequat consequat ut vel lorem. Vestibulum convallis lectus urna,
et mollis ligula rutrum quis. Fusce sed odio id arcu varius aliquet nec nec nibh.

-------- Oprindelig besked --------
Fra: A B C <[email protected]>
Dato: 04.07.2024 17.45 (GMT+01:00)
Til: [email protected]
Emne: Abc has sent you a message!
10 changes: 10 additions & 0 deletions test/fixtures/email_french_dash_separator.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
Fusce bibendum, quam hendrerit sagittis tempor, dui turpis tempus erat, pharetra sodales ante sem sit amet metus.
Nulla malesuada, orci non vulputate lobortis, massa felis pharetra ex, convallis consectetur ex libero eget ante.
Nam vel turpis posuere, rhoncus ligula in, venenatis orci. Duis interdum venenatis ex a rutrum.
Duis ut libero eu lectus consequat consequat ut vel lorem. Vestibulum convallis lectus urna,
et mollis ligula rutrum quis. Fusce sed odio id arcu varius aliquet nec nec nibh.

-------- Message d'origine --------
De : A B C <[email protected]>
Date : 23/06/24 10:46 (GMT+01:00)
À : [email protected] Objet : Abc vous a envoyé un message !
22 changes: 22 additions & 0 deletions test/test.js
Original file line number Diff line number Diff line change
Expand Up @@ -509,3 +509,25 @@ exports.test_email_original_message_2 = function(test) {

test.done();
}

exports.test_email_original_message_danish_dash = function(test) {
let email = get_email("email_danish_dash_separator");

let fragments = email.getFragments();

test.equal(COMMON_FIRST_FRAGMENT, fragments[0].toString().trim());
test.equal(2, fragments.length);

test.done();
}

exports.test_email_original_message_french_dash = function(test) {
let email = get_email("email_french_dash_separator");

let fragments = email.getFragments();

test.equal(COMMON_FIRST_FRAGMENT, fragments[0].toString().trim());
test.equal(2, fragments.length);

test.done();
}

0 comments on commit 9ba93ac

Please sign in to comment.