Módulo:Ordinal
Descrição
Este módulo adiciona o sufixo de número ordinal a um número inteiro. Foi projetado para auxiliar demais módulos e compartimentalizar essa função.
Uso
{{#invoke:Ordinal|ordinal|<valor>|<artigo>}}
{{#invoke:Ordinal|ordinal|valor=<valor>|artigo=<artigo>}}
Cabeçalho de TemplateData
As informações a seguir (editar) são definidas com TemplateData. Isso possibilita o seu uso pelo Editor Visual e por outras ferramentas.
Transforma um número inteiro em um número ordinal
Parâmetro | Descrição | Tipo | Estado | |
---|---|---|---|---|
1 | 1 valor | número inteiro a ser transformado em número ordinal
| Número | obrigatório |
2 | 2 artigo genero flexao | flexão de gênero do número
| String | recomendado |
Testes unitários
Abaixo estão listados testes unitários deste módulo, de modo a garantir o funcionamento do módulo em todos os casos que ele se propõe a cobrir e que ao ser atualizado ou modificado, continue a garantir seu funcionamento integral.
Todos os testes passaram.
Texto | Esperado | Atual | |
---|---|---|---|
{{#invoke:Ordinal|ordinal|1|m}} | 1º | 1º | |
{{#invoke:Ordinal|ordinal|1|f}} | 1ª | 1ª | |
{{#invoke:Ordinal|ordinal|12345|m}} | 12345º | 12345º | |
{{#invoke:Ordinal|ordinal|12345|f}} | 12345ª | 12345ª | |
{{#invoke:Ordinal|ordinal|12345}} | 12345º | 12345º |
Texto | Esperado | Atual | |
---|---|---|---|
{{Ordinal|1|m}} | 1º | 1º | |
{{Ordinal|1|f}} | 1ª | 1ª | |
{{Ordinal|12345|m}} | 12345º | 12345º | |
{{Ordinal|12345|f}} | 12345ª | 12345ª | |
{{Ordinal|12345}} | 12345º | 12345º |
local p = {}
-------------------------------------------------------------------------------
-- Ordinal converte um número inteiro em um numeral seguido do indicador de
-- número ordinal.
-------------------------------------------------------------------------------
function p.ordinal(frame)
local valor = frame.args[1] or frame.args.valor
local artigo = frame.args[2] or frame.args.artigo
local sufixo = "º"
if artigo == "f" then sufixo = "ª" end
return valor .. sufixo
end
return p