Implement stat

Implement both session based and path based stat, and properly
set commit state to dirty when new content has not been committed.

Resolves: openbmc/phosphor-ipmi-blobs-binarystore#3
Tested: unit tests pass

Signed-off-by: Kun Yi <kunyi731@gmail.com>
Change-Id: I7c833cf4c7dcb0089db778caa60fc92edceb984e
diff --git a/test/Makefile.am b/test/Makefile.am
index 3d53916..08ef779 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -16,6 +16,7 @@
 	parse_config_unittest \
 	sys_file_unittest \
 	handler_commit_unittest \
+	handler_stat_unittest \
 	handler_open_unittest \
 	handler_readwrite_unittest \
 	handler_unittest
@@ -44,6 +45,15 @@
 	-lprotobuf
 handler_commit_unittest_CXXFLAGS = $(PHOSPHOR_LOGGING_CFLAGS)
 
+handler_stat_unittest_SOURCES = handler_stat_unittest.cpp
+handler_stat_unittest_LDADD = $(PHOSPHOR_LOGGING_LIBS) \
+	$(top_builddir)/handler.o \
+	$(top_builddir)/binarystore.o \
+	$(top_builddir)/sys_file.o \
+	$(top_builddir)/libbinarystore_la-binaryblob.pb.o \
+	-lprotobuf
+handler_stat_unittest_CXXFLAGS = $(PHOSPHOR_LOGGING_CFLAGS)
+
 handler_open_unittest_SOURCES = handler_open_unittest.cpp
 handler_open_unittest_LDADD = $(PHOSPHOR_LOGGING_LIBS) \
 	$(top_builddir)/handler.o \