assert(#process.args > 0, "No process arguments found") assert(process.args[1] == "Foo", "Invalid first argument to process") assert(process.args[2] == "Bar", "Invalid second argument to process") local success, message = pcall(function() process.args[1] = "abc" end) assert( success == false and type(message) == "string" and #message > 0, "Trying to set process arguments should throw an error with a message" ) assert( string.find(message, "read") ~= nil, "Setting process args error message should mention that they are read-only" ) assert( string.find(message, "only") ~= nil, "Setting process args error message should mention that they are read-only" ) local foundValue = false for _, _ in process.args do foundValue = true break end assert(foundValue, "Iterating using generalized iteration")