<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><br>
    </p>
    <br>
    <div class="moz-cite-prefix">On 08/16/2018 03:03 PM, Alex Hung
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:20180816070330.6160-1-alex.hung@canonical.com">
      <pre wrap="">Signed-off-by: Alex Hung <a class="moz-txt-link-rfc2396E" href="mailto:alex.hung@canonical.com"><alex.hung@canonical.com></a>
---
 src/acpi/ac_adapter/ac_adapter.c |  6 ++----
 src/lib/src/fwts_ac_adapter.c    | 12 ++++++++++++
 2 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/src/acpi/ac_adapter/ac_adapter.c b/src/acpi/ac_adapter/ac_adapter.c
index 1b21b4e..e7d2082 100644
--- a/src/acpi/ac_adapter/ac_adapter.c
+++ b/src/acpi/ac_adapter/ac_adapter.c
@@ -31,10 +31,8 @@ static int ac_adapter_init(fwts_framework *fw)
        int not_matching = 0;

        if (fwts_ac_adapter_get_state(FWTS_AC_ADAPTER_ANY, &matching, &not_matching) != FWTS_OK) {
-               fwts_failed(fw, LOG_LEVEL_LOW, "NoACAdapterEntry",
-                       "No %s or %s directory available: cannot test.",
-                       FWTS_SYS_CLASS_POWER_SUPPLY, FWTS_PROC_ACPI_AC_ADAPTER);
-               return FWTS_ERROR;
+               fwts_log_error(fw, "Power Supply does not exist, skipping test");
+               return FWTS_SKIP;
        }
        return FWTS_OK;
 }
diff --git a/src/lib/src/fwts_ac_adapter.c b/src/lib/src/fwts_ac_adapter.c
index 42e2025..9dd828f 100644
--- a/src/lib/src/fwts_ac_adapter.c
+++ b/src/lib/src/fwts_ac_adapter.c
@@ -78,6 +78,18 @@ int fwts_ac_adapter_get_state(const int state, int *matching, int *not_matching)

        /* Try to user newer /sys interface first */
        if ((ac_power_dir = opendir(FWTS_SYS_CLASS_POWER_SUPPLY))) {
+               struct dirent *ac_entry;
+               int count = 0;
+
+               while ((ac_entry = readdir(ac_power_dir)) != NULL)
+                       count++;
+
+               /* no power supply dir exists */
+               if (count == 2) {
+                       (void)closedir(ac_power_dir);
+                       return FWTS_ERROR;
+               }
+
                ac_interface = &fwts_ac_interfaces[SYS_INTERFACE];
        /* then try older /proc interface  */
        } else if ((ac_power_dir = opendir(FWTS_PROC_ACPI_AC_ADAPTER))) {
</pre>
    </blockquote>
    <br>
    Acked-by: Ivan Hu <a class="moz-txt-link-rfc2396E"
      href="mailto:ivan.hu@canonical.com"><ivan.hu@canonical.com></a>
  </body>
</html>