blob: 68727e20cccd21348cd20a0036037eaee11e8547 [file] [log] [blame]
John Park33858a32018-09-28 23:05:48 -07001#include "aos/network/team_number.h"
Austin Schuhdf5591e2015-12-19 22:36:50 -08002
3#include "gtest/gtest.h"
4
Austin Schuhdf5591e2015-12-19 22:36:50 -08005namespace aos {
6namespace network {
Austin Schuhdf5591e2015-12-19 22:36:50 -08007namespace testing {
8
Brian Silverman5f06ed22020-02-17 21:49:42 -08009using team_number_internal::ParsePiTeamNumber;
Austin Schuh1f2996e2020-03-15 23:09:00 -070010using team_number_internal::ParseRoborioTeamNumber;
Austin Schuhdf5591e2015-12-19 22:36:50 -080011
Brian Silverman3dfbfb12020-02-17 20:35:18 -080012TEST(TeamNumberTest, Parse2015TeamNumber) {
13 EXPECT_EQ(971u, *ParseRoborioTeamNumber("roboRIO-971"));
14
15 EXPECT_EQ(8971u, ParseRoborioTeamNumber("roboRIO-8971"));
16
17 EXPECT_FALSE(ParseRoborioTeamNumber("abc"));
18 EXPECT_FALSE(ParseRoborioTeamNumber("roboRIO-8abc"));
19 EXPECT_FALSE(ParseRoborioTeamNumber("roboRIO-"));
Austin Schuhdf5591e2015-12-19 22:36:50 -080020}
21
22TEST(TeamNumberTest, Parse2016TeamNumber) {
Brian Silverman3dfbfb12020-02-17 20:35:18 -080023 EXPECT_EQ(971u, *ParseRoborioTeamNumber("roboRIO-971-FRC"));
Austin Schuhdf5591e2015-12-19 22:36:50 -080024
Brian Silverman3dfbfb12020-02-17 20:35:18 -080025 EXPECT_EQ(8971u, *ParseRoborioTeamNumber("roboRIO-8971-FRC"));
26
27 EXPECT_FALSE(ParseRoborioTeamNumber("roboRIO-8abc-FRC"));
28 EXPECT_FALSE(ParseRoborioTeamNumber("roboRIO-8971-FRC2"));
29 EXPECT_FALSE(ParseRoborioTeamNumber("roboRIO-8971-2FRC"));
30 EXPECT_FALSE(ParseRoborioTeamNumber("roboRIO--FRC"));
Austin Schuhdf5591e2015-12-19 22:36:50 -080031}
32
Brian Silverman5f06ed22020-02-17 21:49:42 -080033TEST(TeamNumberTest, ParsePiTeamNumber) {
34 EXPECT_EQ(971u, *ParsePiTeamNumber("pi-971-1"));
35 EXPECT_EQ(8971u, *ParsePiTeamNumber("pi-8971-22"));
36 EXPECT_EQ(8971u, *ParsePiTeamNumber("pi-8971-"));
37
38 EXPECT_FALSE(ParseRoborioTeamNumber("pi"));
39 EXPECT_FALSE(ParseRoborioTeamNumber("pi-"));
40 EXPECT_FALSE(ParseRoborioTeamNumber("pi-971"));
41 EXPECT_FALSE(ParseRoborioTeamNumber("pi-971a-1"));
Austin Schuh1f2996e2020-03-15 23:09:00 -070042
43 EXPECT_EQ(1u, *ParsePiNumber("pi-971-1"));
44 EXPECT_EQ(22u, *ParsePiNumber("pi-8971-22"));
45
46 EXPECT_FALSE(ParsePiNumber("pi-8971-"));
47 EXPECT_FALSE(ParsePiNumber("pi"));
48 EXPECT_FALSE(ParsePiNumber("pi-"));
49 EXPECT_FALSE(ParsePiNumber("pi-971"));
Brian Silverman5f06ed22020-02-17 21:49:42 -080050}
51
Austin Schuhdf5591e2015-12-19 22:36:50 -080052} // namespace testing
Austin Schuhdf5591e2015-12-19 22:36:50 -080053} // namespace network
54} // namespace aos