User:Jcgoble3/userCA/testcases
Tests of User:Jcgoble3/userCA (Lua module).
Invocation with 10 explicitly numbered articles
editInvocation with 40 articles
editInvocation with 200 articles
editFile:30px-ComprehensiveArticle.png | This user has helped promote 200 articles to Comprehensive status: 1 • 2 • 3 • 4 • 5 • 6 • 7 • 8 9 • 10 • 11 • 12 • 13 • 14 • 15 • 16 17 • 18 • 19 • 20 • 21 • 22 • 23 • 24 25 • 26 • 27 • 28 • 29 • 30 • 31 • 32 33 • 34 • 35 • 36 • 37 • 38 • 39 • 40 41 • 42 • 43 • 44 • 45 • 46 • 47 • 48 49 • 50 • 51 • 52 • 53 • 54 • 55 • 56 57 • 58 • 59 • 60 • 61 • 62 • 63 • 64 65 • 66 • 67 • 68 • 69 • 70 • 71 • 72 73 • 74 • 75 • 76 • 77 • 78 • 79 • 80 81 • 82 • 83 • 84 • 85 • 86 • 87 • 88 89 • 90 • 91 • 92 • 93 • 94 • 95 • 96 97 • 98 • 99 • 100 • 101 • 102 103 • 104 • 105 • 106 • 107 • 108 109 • 110 • 111 • 112 • 113 • 114 115 • 116 • 117 • 118 • 119 • 120 121 • 122 • 123 • 124 • 125 • 126 127 • 128 • 129 • 130 • 131 • 132 133 • 134 • 135 • 136 • 137 • 138 139 • 140 • 141 • 142 • 143 • 144 145 • 146 • 147 • 148 • 149 • 150 151 • 152 • 153 • 154 • 155 • 156 157 • 158 • 159 • 160 • 161 • 162 163 • 164 • 165 • 166 • 167 • 168 169 • 170 • 171 • 172 • 173 • 174 175 • 176 • 177 • 178 • 179 • 180 181 • 182 • 183 • 184 • 185 • 186 187 • 188 • 189 • 190 • 191 • 192 193 • 194 • 195 • 196 • 197 • 198 199 • 200 |
Invocation with 400 articles
editWhat happens if a Lua module is transcluded using ordinary template markup?
edit-- First attempt at writing a Lua script by User:Jcgoble3 -- Conversion of wikia:starwars:User:Master Jonathan/UserCAmultiple -- Requires CSS at User:Jcgoble3/common.css to look right
local p = {}
-- primary function called by template function p.main(frame)
local pframe = frame:getParent() local args = pframe.args local articles = {} for num, article in ipairs(args) do articles[num] = article end
local ret = {}
ret[#ret + 1] = '
ret[#ret + 1] = '\n| class="ubx-icon" style="background: #4682B4;" | File:30px-ComprehensiveArticle.png' ret[#ret + 1] = string.format("\n| class=\"ubx-main\" | This user has helped promote %d articles ", #articles) ret[#ret + 1] = 'to Comprehensive status:'
for num, article in ipairs(articles) do
-- determine number of articles per line
local z = (num > 100) and 6 or 8
-- determine whether to start a new line or continue the current line
local divider = (num % z == 1) and "
" or " • "
-- append the current article to the list as a numbered link
ret[#ret + 1] = string.format('%s%d', divider, article, num)
end
'
return table.concat(ret) end
return p