power-utils: Initially add Updater class

The Updater class is used to do PSU code update, initially add it that
does unbind/bind driver and set PSU present to false/true during the
update.

Tested: Manually verify on Witherspoon that the driver is unbind/bind,
        and the PSU present property is set to false/true during the PSU
        update:
          psutils --update \
          /xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0 \
          /tmp/images/xxxxxxxx

Signed-off-by: Lei YU <mine260309@gmail.com>
Change-Id: Ic0a9df7687303caeb9a7f21ba00dc33ee76482db
diff --git a/tools/power-utils/test/meson.build b/tools/power-utils/test/meson.build
index 056f4cc..45052ad 100644
--- a/tools/power-utils/test/meson.build
+++ b/tools/power-utils/test/meson.build
@@ -16,3 +16,22 @@
         objects: record_manager,
     )
 )
+
+test(
+    'test_updater',
+    executable(
+        'test_updater',
+        'test_updater.cpp',
+        '../updater.cpp',
+        dependencies: [
+            gtest,
+            phosphor_logging,
+        ],
+        implicit_include_directories: false,
+        include_directories: '../../..',
+        link_with: [
+            libpower,
+        ],
+        objects: record_manager,
+    )
+)