Index: net/ftp/ftp_directory_listing_parser_vms_unittest.cc |
diff --git a/net/ftp/ftp_directory_listing_parser_vms_unittest.cc b/net/ftp/ftp_directory_listing_parser_vms_unittest.cc |
index f566481b5487d67f47a83e32526c3466d581f793..d54e06bcd5af6098afcf6dfcb0960cb96d1796ed 100644 |
--- a/net/ftp/ftp_directory_listing_parser_vms_unittest.cc |
+++ b/net/ftp/ftp_directory_listing_parser_vms_unittest.cc |
@@ -76,37 +76,46 @@ TEST_F(FtpDirectoryListingParserVmsTest, Good) { |
TEST_F(FtpDirectoryListingParserVmsTest, Bad) { |
const char* const bad_cases[] = { |
- "garbage", |
- |
- // Missing file version number. |
- "README.TXT 2 18-APR-2000 10:40:39", |
- |
- // Missing extension. |
- "README;1 2 18-APR-2000 10:40:39", |
- |
- // Malformed file size. |
- "README.TXT;1 garbage 18-APR-2000 10:40:39", |
- "README.TXT;1 -2 18-APR-2000 10:40:39", |
- |
- // Malformed date. |
- "README.TXT;1 2 APR-2000 10:40:39", |
- "README.TXT;1 2 -18-APR-2000 10:40:39", |
- "README.TXT;1 2 18-APR 10:40:39", |
- "README.TXT;1 2 18-APR-2000 10", |
- "README.TXT;1 2 18-APR-2000 10:40.25", |
- "README.TXT;1 2 18-APR-2000 10:40.25.25", |
- |
- // Malformed security information. |
- "X.TXT;2 1 12-MAR-2005 08:44:57 (RWED,RWED,RE,RE)", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 [SYSTEM]", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 (SYSTEM) (RWED,RWED,RE,RE)", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 [SYSTEM] [RWED,RWED,RE,RE]", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED)", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,RWED,RE,RE,RE)", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,RWEDRWED,RE,RE)", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,DEWR,RE,RE)", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,RWED,Q,RE)", |
- "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,RRWWEEDD,RE,RE)", |
+ "garbage", |
+ |
+ // Missing file version number. |
+ "README.TXT 2 18-APR-2000 10:40:39", |
+ |
+ // Missing extension. |
+ "README;1 2 18-APR-2000 10:40:39", |
+ |
+ // Malformed file size. |
+ "README.TXT;1 garbage 18-APR-2000 10:40:39", |
+ "README.TXT;1 -2 18-APR-2000 10:40:39", |
+ |
+ // Malformed date. |
+ "README.TXT;1 2 APR-2000 10:40:39", |
+ "README.TXT;1 2 -18-APR-2000 10:40:39", "README.TXT;1 2 18-APR 10:40:39", |
+ "README.TXT;1 2 18-APR-2000 10", "README.TXT;1 2 18-APR-2000 10:40.25", |
+ "README.TXT;1 2 18-APR-2000 10:40.25.25", |
+ |
+ // Malformed security information. |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 (RWED,RWED,RE,RE)", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 [SYSTEM]", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 (SYSTEM) (RWED,RWED,RE,RE)", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 [SYSTEM] [RWED,RWED,RE,RE]", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED)", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,RWED,RE,RE,RE)", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,RWEDRWED,RE,RE)", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,DEWR,RE,RE)", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,RWED,Q,RE)", |
+ "X.TXT;2 1 12-MAR-2005 08:44:57 [X] (RWED,RRWWEEDD,RE,RE)", |
+ |
+ // Block size is too large, leading to overflow when calculating |
+ // file size. |
+ "README.TXT;1 9223372036854775807 18-APR-2000 10:40:39.90", |
+ "README.TXT;1 9223372036854775807/9223372036854775807 18-APR-2000 " |
+ "10:40:39.90", |
+ |
+ // Block size is too large (bigger than int64 max) |
+ "README.TXT;1 19223372036854775807 18-APR-2000 10:40:39.90", |
+ "README.TXT;1 19223372036854775807/19223372036854775807 18-APR-2000 " |
mmenke
2017/01/04 19:07:24
Also a test where block site is not too large (Nor
eroman
2017/01/04 20:16:58
Done.
|
+ "10:40:39.90", |
}; |
for (size_t i = 0; i < arraysize(bad_cases); i++) { |
SCOPED_TRACE(base::StringPrintf("Test[%" PRIuS "]: %s", i, bad_cases[i])); |