diff --git a/km3io/gseagen.py b/km3io/gseagen.py
index d14502d6e1400f0b800164e2241b34badef4bb71..8ee92f89671b2ed289edded435ac1aa98bc1102a 100644
--- a/km3io/gseagen.py
+++ b/km3io/gseagen.py
@@ -26,7 +26,7 @@ class GSGReader(EventReader):
                         v = v.decode("utf-8")
                     except UnicodeDecodeError:
                         pass
-                header[k.decode("utf-8")] = v
+                header[k] = v
             return header
         else:
             warnings.warn("Your file header has an unsupported format")
diff --git a/tests/test_gseagen.py b/tests/test_gseagen.py
index ba20a4199fbdb3935fbacf5769a86036edb158b6..f87fda3e512f818e288aa7194367de79b26eb72e 100644
--- a/tests/test_gseagen.py
+++ b/tests/test_gseagen.py
@@ -1,6 +1,8 @@
 import os
 import re
 import unittest
+import inspect
+import awkward as ak
 
 from km3net_testdata import data_path
 
@@ -8,21 +10,23 @@ from km3io.gseagen import GSGReader
 
 GSG_READER = GSGReader(data_path("gseagen/gseagen.root"))
 
+AWKWARD_STR_CLASSES = [
+    s[1] for s in inspect.getmembers(ak.behaviors.string, inspect.isclass)
+]
+
 
 class TestGSGHeader(unittest.TestCase):
-    # def setUp(self):
-    #     self.header = GSG_READER.header
+    def setUp(self):
+        self.header = GSG_READER.header
 
-    @unittest.skip
     def test_str_byte_type(self):
-        assert isinstance(self.header["gSeaGenVer"], str)
-        assert isinstance(self.header["GenieVer"], str)
-        assert isinstance(self.header["gSeaGenVer"], str)
-        assert isinstance(self.header["InpXSecFile"], str)
-        assert isinstance(self.header["Flux1"], str)
-        assert isinstance(self.header["Flux2"], str)
+        assert type(self.header["gSeaGenVer"]) in AWKWARD_STR_CLASSES
+        assert type(self.header["GenieVer"]) in AWKWARD_STR_CLASSES
+        assert type(self.header["gSeaGenVer"]) in AWKWARD_STR_CLASSES
+        assert type(self.header["InpXSecFile"]) in AWKWARD_STR_CLASSES
+        assert type(self.header["Flux1"]) in AWKWARD_STR_CLASSES
+        assert type(self.header["Flux2"]) in AWKWARD_STR_CLASSES
 
-    @unittest.skip
     def test_values(self):
         assert self.header["RunNu"] == 1
         assert self.header["RanSeed"] == 3662074
@@ -112,14 +116,12 @@ class TestGSGEvents(unittest.TestCase):
         self.assertListEqual(event.Id_tr.tolist(), [4, 5, 10, 11, 12])
         self.assertListEqual(event.Pdg_tr.tolist(), [22, -13, 2112, -211, 111])
         [
-            self.assertAlmostEqual(x, y)
-            for x, y in zip(
-                event.E_tr, [0.00618, 4.88912206, 2.33667201, 1.0022909, 1.17186997]
-            )
+            self.assertAlmostEqual(x, y) for x, y in zip(
+                event.E_tr,
+                [0.00618, 4.88912206, 2.33667201, 1.0022909, 1.17186997])
         ]
         [
-            self.assertAlmostEqual(x, y)
-            for x, y in zip(
+            self.assertAlmostEqual(x, y) for x, y in zip(
                 event.Vx_tr,
                 [
                     -337.67895799,
@@ -131,8 +133,7 @@ class TestGSGEvents(unittest.TestCase):
             )
         ]
         [
-            self.assertAlmostEqual(x, y)
-            for x, y in zip(
+            self.assertAlmostEqual(x, y) for x, y in zip(
                 event.Vy_tr,
                 [
                     -203.90999969,
@@ -144,31 +145,36 @@ class TestGSGEvents(unittest.TestCase):
             )
         ]
         [
-            self.assertAlmostEqual(x, y)
-            for x, y in zip(
+            self.assertAlmostEqual(x, y) for x, y in zip(
                 event.Vz_tr,
-                [416.08845294, 416.08845294, 416.08845294, 416.08845294, 416.08845294],
+                [
+                    416.08845294, 416.08845294, 416.08845294, 416.08845294,
+                    416.08845294
+                ],
             )
         ]
         [
-            self.assertAlmostEqual(x, y)
-            for x, y in zip(
+            self.assertAlmostEqual(x, y) for x, y in zip(
                 event.Dx_tr,
-                [0.06766196, -0.63563065, -0.70627586, -0.76364544, -0.80562216],
+                [
+                    0.06766196, -0.63563065, -0.70627586, -0.76364544,
+                    -0.80562216
+                ],
             )
         ]
         [
-            self.assertAlmostEqual(x, y)
-            for x, y in zip(
+            self.assertAlmostEqual(x, y) for x, y in zip(
                 event.Dy_tr,
                 [0.33938809, -0.4846643, 0.50569058, -0.04136113, 0.10913917],
             )
         ]
         [
-            self.assertAlmostEqual(x, y)
-            for x, y in zip(
+            self.assertAlmostEqual(x, y) for x, y in zip(
                 event.Dz_tr,
-                [-0.93820978, -0.6008945, -0.49543056, -0.64430963, -0.58228994],
+                [
+                    -0.93820978, -0.6008945, -0.49543056, -0.64430963,
+                    -0.58228994
+                ],
             )
         ]
         [self.assertAlmostEqual(x, y) for x, y in zip(event.T_tr, 5 * [0.0])]