From 29546bb13abc771a5c68a2dbf48d4140097b3623 Mon Sep 17 00:00:00 2001 From: Davis C Date: Thu, 18 Apr 2024 15:01:55 -0500 Subject: [PATCH] Updated login example with new expect logic --- examples/lua/automatic-login.lua | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/examples/lua/automatic-login.lua b/examples/lua/automatic-login.lua index 1787da1..c951694 100644 --- a/examples/lua/automatic-login.lua +++ b/examples/lua/automatic-login.lua @@ -1,28 +1,30 @@ local logins = { - { - serialnumber = "foo", + ["foo"] = { username = "foouser", password = "foopass", }, - { - serialnumber = "bar", + ["bar"] = { username = "baruser", password = "barpass", }, - { - serialnumber = "baz", + ["baz"] = { username = "bazuser", password = "bazpass", }, } -for _, login in ipairs(logins) do - send("\n") - local found = expect(login.serialnumber .. ".*login:", 10) - if (1 == found) then +send("\n") +local found, match_str = expect("\\w+- login:", 10) +if (1 == found) then + local model = string.match(match_str, "^%w+") + local login = logins[model] + if (nil ~= login) then send(login.username .. "\n") expect("Password:") send(login.password .. "\n") - break + else + print("\r\nDon't know login info for " .. model .. "\r\n") end +else + print("\r\nDidn't find a login prompt\r\n") end