scripts: update open calls to use explicit encoding

BUG=b:187789896
TEST=`cros lint` is clean here

Change-Id: Ia54475869c17292505537334362cd4cff6438b14
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/4290041
Commit-Queue: Cindy Lin <xcl@google.com>
Reviewed-by: Cindy Lin <xcl@google.com>
Tested-by: Mike Frysinger <vapier@chromium.org>
Auto-Submit: Mike Frysinger <vapier@chromium.org>
diff --git a/scripts/sysmon/puppet_metrics_unittest.py b/scripts/sysmon/puppet_metrics_unittest.py
index b90b0b3..c1d933c 100644
--- a/scripts/sysmon/puppet_metrics_unittest.py
+++ b/scripts/sysmon/puppet_metrics_unittest.py
@@ -13,6 +13,7 @@
 from unittest import mock
 
 from chromite.lib import cros_test_lib
+from chromite.lib import osutils
 from chromite.scripts.sysmon import puppet_metrics
 
 
@@ -128,8 +129,7 @@
         self.tempfile = os.path.join(self.tempdir, "last_run_summary.yaml")
 
     def test_collect(self):
-        with open(self.tempfile, "w") as f:
-            f.write(_SUMMARY)
+        osutils.WriteFile(self.tempfile, _SUMMARY)
         with mock.patch("time.time", return_value=1500000000):
             with mock.patch.object(
                 puppet_metrics, "LAST_RUN_FILE", self.tempfile