config_parser: Add parser warnings

This makes it possible to determine if the file had formatting issues
and should be rewritten.

Change-Id: I1a1fd683b5733bff1841703dcd7be99688b66c54
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/test/test_config_parser.cpp b/test/test_config_parser.cpp
index a49b23e..e8337af 100644
--- a/test/test_config_parser.cpp
+++ b/test/test_config_parser.cpp
@@ -43,10 +43,28 @@
     }
 };
 
+TEST_F(TestConfigParser, EmptyObject)
+{
+    EXPECT_EQ(0, parser.getWarnings().size());
+}
+
+TEST_F(TestConfigParser, ReadDirectory)
+{
+    parser.setFile("/");
+    EXPECT_EQ(1, parser.getWarnings().size());
+}
+
+TEST_F(TestConfigParser, ReadConfigDataMissingFile)
+{
+    parser.setFile("/no-such-path");
+    EXPECT_EQ(1, parser.getWarnings().size());
+}
+
 TEST_F(TestConfigParser, ReadConfigDataFromFile)
 {
     WriteSampleFile();
     parser.setFile(filename);
+    EXPECT_EQ(4, parser.getWarnings().size());
 
     EXPECT_THAT(parser.getValues("Match", "Name"), ElementsAre("eth0"));
     EXPECT_THAT(parser.getValues("DHCP", "ClientIdentifier"),