test(fls): e-mail account files against Swift's reader
The Swift oracle reads the 43 account files Java read (--email-files, with TopologyRuntimeEmailStorage.decodeJavaServer and decodeJavaClient). The accounts the model takes match Swift's except where Swift checks names, hosts and addresses and fails the whole file on one it rejects, or reads the format otherwise (the first client line instead of the last, exactly nine fields, a required messages field). Every departure is named with its reason; Java's reading is right in each, none is a Java error Swift fixes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,129 @@
|
||||
[
|
||||
[
|
||||
"mail.gmx.de;mail.gmx.de;110;25;herbert;herbert1234;Schmidt;Herbert;herbert@gmx.de",
|
||||
{
|
||||
"email" : "herbert@gmx.de",
|
||||
"name" : "Herbert Schmidt",
|
||||
"password" : "herbert1234",
|
||||
"pop3Host" : "mail.gmx.de",
|
||||
"pop3Port" : 110,
|
||||
"smtpHost" : "mail.gmx.de",
|
||||
"smtpPort" : 25,
|
||||
"username" : "herbert"
|
||||
}
|
||||
],
|
||||
[
|
||||
"mail.gmx.de;mail.gmx.de;110;25;herbert;herbert1234;Schmidt;Herbert;herbert@gmx.de\\u000A",
|
||||
{
|
||||
"email" : "herbert@gmx.de",
|
||||
"name" : "Herbert Schmidt",
|
||||
"password" : "herbert1234",
|
||||
"pop3Host" : "mail.gmx.de",
|
||||
"pop3Port" : 110,
|
||||
"smtpHost" : "mail.gmx.de",
|
||||
"smtpPort" : 25,
|
||||
"username" : "herbert"
|
||||
}
|
||||
],
|
||||
[
|
||||
"a;a;110;25;first;p;L;F;first@x\\u000Ab;b;110;25;second;p;L;F;second@x\\u000A",
|
||||
{
|
||||
"email" : "first@x",
|
||||
"name" : "F L",
|
||||
"password" : "p",
|
||||
"pop3Host" : "a",
|
||||
"pop3Port" : 110,
|
||||
"smtpHost" : "a",
|
||||
"smtpPort" : 25,
|
||||
"username" : "first"
|
||||
}
|
||||
],
|
||||
[
|
||||
"a;a;110;25;first;p;L;F;first@x\\u000Abroken\\u000A",
|
||||
{
|
||||
"email" : "first@x",
|
||||
"name" : "F L",
|
||||
"password" : "p",
|
||||
"pop3Host" : "a",
|
||||
"pop3Port" : 110,
|
||||
"smtpHost" : "a",
|
||||
"smtpPort" : 25,
|
||||
"username" : "first"
|
||||
}
|
||||
],
|
||||
[
|
||||
"",
|
||||
"!invalidAccount(\"missing client account\")"
|
||||
],
|
||||
[
|
||||
"\\u000A",
|
||||
"!invalidAccount(\"missing client account\")"
|
||||
],
|
||||
[
|
||||
"\\u000A\\u000A\\u000A",
|
||||
"!invalidAccount(\"missing client account\")"
|
||||
],
|
||||
[
|
||||
"a;b;110;25;u;p;L;F;\\u000A",
|
||||
"!invalidAddress(\"\")"
|
||||
],
|
||||
[
|
||||
"a;b;110;25;u;p;L;F;u@x;extra\\u000A",
|
||||
"!invalidAccount(\"malformed client account\")"
|
||||
],
|
||||
[
|
||||
"a;b;110;25;u;p;L;F;u@x\\u000D\\u000A",
|
||||
{
|
||||
"email" : "u@x",
|
||||
"name" : "F L",
|
||||
"password" : "p",
|
||||
"pop3Host" : "a",
|
||||
"pop3Port" : 110,
|
||||
"smtpHost" : "b",
|
||||
"smtpPort" : 25,
|
||||
"username" : "u"
|
||||
}
|
||||
],
|
||||
[
|
||||
"a;;110;25;u;p;;;u@x\\u000A",
|
||||
"!invalidHost(\"\")"
|
||||
],
|
||||
[
|
||||
"a;b;110;25;u;p;L;F;u@x\\u000A\\u000A\\u000A",
|
||||
{
|
||||
"email" : "u@x",
|
||||
"name" : "F L",
|
||||
"password" : "p",
|
||||
"pop3Host" : "a",
|
||||
"pop3Port" : 110,
|
||||
"smtpHost" : "b",
|
||||
"smtpPort" : 25,
|
||||
"username" : "u"
|
||||
}
|
||||
],
|
||||
[
|
||||
"\\u000Aa;b;110;25;u;p;L;F;u@x",
|
||||
{
|
||||
"email" : "u@x",
|
||||
"name" : "F L",
|
||||
"password" : "p",
|
||||
"pop3Host" : "a",
|
||||
"pop3Port" : 110,
|
||||
"smtpHost" : "b",
|
||||
"smtpPort" : 25,
|
||||
"username" : "u"
|
||||
}
|
||||
],
|
||||
[
|
||||
" a ; b ;x;y; u ; p ; L ; F ; u@x \\u000A",
|
||||
"!invalidAccount(\"malformed client account\")"
|
||||
],
|
||||
[
|
||||
";;;;;;;;",
|
||||
"!invalidAccount(\"malformed client account\")"
|
||||
],
|
||||
[
|
||||
";;;;;;;;x",
|
||||
"!invalidAccount(\"malformed client account\")"
|
||||
]
|
||||
]
|
||||
Reference in New Issue
Block a user