Fix for WifiEnterpriseTest autotest failure

WifiEnterpriseTest fails in autotest.
This does not happen while running manually.
Manual runs use Python3 and autotest use Python2.7.
Dictionary with enum objects values are read as string in Python2.7

Updated WifiEnterpriseRoamingTest with the same. Since, we did not
have any autotest run so far, we did not see this issue.

Updated wifi_test_utils - expand_enterprise_config_by_phase2()
Only these two scripts depend on this function

Added generate_eap_test_name to wifi_test_utils

Bug: 35203145
Test: Verified the fix on Python2.7 and Python3
Change-Id: I203a3feb36ca86fce1f3691e3c84027e35339b87
diff --git a/acts/tests/google/wifi/WifiEnterpriseTest.py b/acts/tests/google/wifi/WifiEnterpriseTest.py
index 257c7a0..98caaf2 100755
--- a/acts/tests/google/wifi/WifiEnterpriseTest.py
+++ b/acts/tests/google/wifi/WifiEnterpriseTest.py
@@ -59,17 +59,17 @@
                                plmn=None)
         # Default configs for EAP networks.
         self.config_peap0 = {
-            Ent.EAP: EAP.PEAP,
+            Ent.EAP: int(EAP.PEAP),
             Ent.CA_CERT: self.ca_cert,
             Ent.IDENTITY: self.eap_identity,
             Ent.PASSWORD: self.eap_password,
-            Ent.PHASE2: EapPhase2.MSCHAPV2,
+            Ent.PHASE2: int(EapPhase2.MSCHAPV2),
             WifiEnums.SSID_KEY: self.ssid_peap0
         }
         self.config_peap1 = dict(self.config_peap0)
         self.config_peap1[WifiEnums.SSID_KEY] = self.ssid_peap1
         self.config_tls = {
-            Ent.EAP: EAP.TLS,
+            Ent.EAP: int(EAP.TLS),
             Ent.CA_CERT: self.ca_cert,
             WifiEnums.SSID_KEY: self.ssid_tls,
             Ent.CLIENT_CERT: self.client_cert,
@@ -77,29 +77,29 @@
             Ent.IDENTITY: self.eap_identity,
         }
         self.config_ttls = {
-            Ent.EAP: EAP.TTLS,
+            Ent.EAP: int(EAP.TTLS),
             Ent.CA_CERT: self.ca_cert,
             Ent.IDENTITY: self.eap_identity,
             Ent.PASSWORD: self.eap_password,
-            Ent.PHASE2: EapPhase2.MSCHAPV2,
+            Ent.PHASE2: int(EapPhase2.MSCHAPV2),
             WifiEnums.SSID_KEY: self.ssid_ttls
         }
         self.config_pwd = {
-            Ent.EAP: EAP.PWD,
+            Ent.EAP: int(EAP.PWD),
             Ent.IDENTITY: self.eap_identity,
             Ent.PASSWORD: self.eap_password,
             WifiEnums.SSID_KEY: self.ssid_pwd
         }
         self.config_sim = {
-            Ent.EAP: EAP.SIM,
+            Ent.EAP: int(EAP.SIM),
             WifiEnums.SSID_KEY: self.ssid_sim,
         }
         self.config_aka = {
-            Ent.EAP: EAP.AKA,
+            Ent.EAP: int(EAP.AKA),
             WifiEnums.SSID_KEY: self.ssid_aka,
         }
         self.config_aka_prime = {
-            Ent.EAP: EAP.AKA_PRIME,
+            Ent.EAP: int(EAP.AKA_PRIME),
             WifiEnums.SSID_KEY: self.ssid_aka_prime,
         }
 
@@ -181,7 +181,7 @@
             if Ent.FQDN in config and phase2_type == EapPhase2.GTC:
                 continue
             c = dict(config)
-            c[Ent.PHASE2] = phase2_type
+            c[Ent.PHASE2] = phase2_type.value
             results.append(c)
         return results
 
@@ -284,28 +284,6 @@
         configs = self.gen_passpoint_configs()
         return self.gen_negative_configs(configs, neg_params)
 
-    def gen_eap_test_name(self, config, ad):
-        """Generates a test case name based on an EAP configuration.
-
-        Args:
-            config: A dict representing an EAP credential.
-            ad: Discarded. This is here because name function signature needs
-                to be consistent with logic function signature for generated
-                test cases.
-
-        Returns:
-            A string representing the name of a generated EAP test case.
-        """
-        eap_name = config[Ent.EAP].name
-        if "peap0" in config[WifiEnums.SSID_KEY].lower():
-            eap_name = "PEAP0"
-        if "peap1" in config[WifiEnums.SSID_KEY].lower():
-            eap_name = "PEAP1"
-        name = "test_connect-%s" % eap_name
-        if Ent.PHASE2 in config:
-            name += "-{}".format(config[Ent.PHASE2].name)
-        return name
-
     def gen_eap_test_name_for_config_store(self, config, ad):
         """Generates a test case name based on an EAP configuration for config
         store tests.
@@ -319,7 +297,7 @@
         Returns:
             A string representing the name of a generated EAP test case.
         """
-        return self.gen_eap_test_name(config, ad) + "-config_store"
+        return wutils.generate_eap_test_name(config) + "-config_store"
 
     def gen_passpoint_test_name(self, config, ad):
         """Generates a test case name based on an EAP passpoint configuration.
@@ -334,7 +312,7 @@
             A string representing the name of a generated EAP passpoint connect
             test case.
         """
-        name = self.gen_eap_test_name(config, ad)
+        name = wutils.generate_eap_test_name(config)
         name = name.replace("connect", "passpoint_connect")
         return name
 
@@ -400,7 +378,7 @@
         failed = self.run_generated_testcases(wutils.wifi_connect,
                                               eap_configs,
                                               args=(self.dut, ),
-                                              name_func=self.gen_eap_test_name,
+                                              name_func=wutils.generate_eap_test_name,
                                               format_args=True)
         asserts.assert_equal(
             len(failed), 0, "The following configs failed EAP connect test: %s"
@@ -422,7 +400,7 @@
         random.shuffle(neg_eap_configs)
 
         def name_gen(config, ad):
-            name = self.gen_eap_test_name(config, ad)
+            name = wutils.generate_eap_test_name(config)
             name += "-with_wrong-{}".format(config["invalid_field"])
             return name
 
@@ -462,7 +440,7 @@
             self.eap_connect_toggle_wifi,
             eap_configs,
             args=(self.dut, ),
-            name_func=self.gen_eap_test_name_for_config_store)
+            name_func=wutils.generate_eap_test_name)
         asserts.assert_equal(
             len(failed), 0, "The following configs failed EAP connect test: %s"
             % pprint.pformat(failed))