Módulo:Ficha de persona/tests

De Wikipedia, la enciclopedia libre
-- Tests para [[Module:Demo]]. El resultado está en la página de discusión.
local p = require('Module:UnitTests')

function p:test_cabecera()
	local function pruebas(cabecera, tipocabecera,estilotitulo, estiloseccion)
		return 
		'{{Ficha de persona|cabecera=' .. cabecera .. '|nombre=' .. cabecera .. '|nombre de nacimiento=pruebas}}'
		, '{{Ficha|clase=biography vcard|estiloetiqueta=width:33%|estilodatos=padding:0.2em; line-height:1.3em; vertical-align:middle;|seccion1=Información personal|etiqueta2 = Nombre de nacimiento|datos2 = pruebas'
		.. '|titulo=' .. cabecera
		.. '|estilotitulo='  .. (estilotitulo or '')
		.. '|tipocabecera='  .. (tipocabecera or '')
		.. '|estiloseccion=' .. (estiloseccion or '')
		.. '}}'
	end
	
	local function pruebasPersonaFallecida(cabecera, tipocabecera,estilotitulo, estiloseccion)
		return 
		'{{Ficha de persona|cabecera=' .. cabecera .. '|nombre=Persona fallecida: ' .. cabecera .. '|nombre de nacimiento=pruebas|fecha de fallecimiento=pruebas}}'
		, '{{Ficha|clase=biography vcard|estiloetiqueta=width:33%|estilodatos=padding:0.2em; line-height:1.3em; vertical-align:middle;|seccion1=Información personal|etiqueta2 = Nombre de nacimiento|datos2 = pruebas'
		.. '|etiqueta3 = Fallecimiento|datos3 = pruebas'
		.. '|titulo=Persona fallecida: ' .. cabecera
		.. '|estilotitulo='  .. (estilotitulo or '')
		.. '|tipocabecera='  .. (tipocabecera or '')
		.. '|estiloseccion=' .. (estiloseccion or '')
		.. '}}'
	end	
    self:preprocess_equals(pruebas('por defecto','humano fn', 'background-color:#8DB1C3;color:#FFF', 'background-color:#8DB1C3;color:#FFF'))
    self:preprocess_equals(pruebas('ajedrecista', '', 'background-color:transparent;', 'background-color:transparent;'))
    self:preprocess_equals(pruebas('artista', '', 'background-color:#8DB1C3;color:#FFF', 'background-color:#8DB1C3;color:#FFF'))
    self:preprocess_equals(pruebas('autoridad', '', 'background-color:transparent;', 'background-color:#E6E6FA;'))
    self:preprocess_equals(pruebas('cantante', 'música', 'background-color:#f0e68c', 'background-color:#f0e68c'))    
    self:preprocess_equals(pruebas('cine', 'cine', 'background-color:#f9e999', 'background-color:#f9e999'))
    self:preprocess_equals(pruebas('diseñador', '', 'background-color:#ED8;color:#000', 'background-color:#ED8;color:#000'))
    self:preprocess_equals(pruebas('escritor', 'libro', 'background-color:#4c6099;color:#FFF', 'background-color:#4c6099;color:#FFF'))
    self:preprocess_equals(pruebas('militar', 'militar', 'background-color:#b0c4de;color:#000', 'background-color:#b0c4de;color:#000'))
    self:preprocess_equals(pruebas('modelo', 'hombremujer', 'background-color:#9F9;color:#000', 'background-color:#9F9;color:#000'))
    self:preprocess_equals(pruebas('músico', 'música', 'background-color:#F4BF92', 'background-color:#F4BF92'))
    self:preprocess_equals(pruebas('otro música', 'música', 'background-color:#BFE0BF', 'background-color:#BFE0BF'))        
    self:preprocess_equals(pruebas('periodista', 'revista', 'background-color:#ED8;color:#000', 'background-color:#ED8;color:#000'))
    self:preprocess_equals(pruebas('televisión', 'cabecera televisión', 'background-color:#ED8;color:#000', 'background-color:#ED8;color:#000'))
    
    self:preprocess_equals(pruebasPersonaFallecida('por defecto','humano fn', 'background-color:#c0c0c0;color:#000', 'background-color:#c0c0c0;color:#000'))    
    self:preprocess_equals(pruebasPersonaFallecida('autoridad', '', 'background-color:transparent;', 'background-color:#E6E6FA;'))    
    self:preprocess_equals(pruebasPersonaFallecida('músico', 'música', 'background-color:#F4BF92', 'background-color:#F4BF92'))    
end

function p:test_premios()
    self:preprocess_equals('{{#invoke:Ficha de persona|premios|id=Q338612}}', '<ul><li>Comendador de la Legión de Honor&nbsp;<small>(2013)</small></li><li>Comendador de las Artes y las Letras&nbsp;<small>(2016)</small></li><li>Gran Oficial de la Orden Nacional del Mérito&nbsp;<small>(2018)</small><span class="wikidata-link noprint"> [[Archivo:Blue_pencil.svg|Ver y modificar los datos en Wikidata|10px|baseline|alt=Ver y modificar los datos en Wikidata|enlace=https://www.wikidata.org/wiki/Q338612?uselang=es#P166]]</span></li></ul>') -- Solo rango mayor
    self:preprocess_equals('{{#invoke:Ficha de persona|premios|id=Q123078}}', '<ul><li>Premio Hugo [[Premio Hugo a la mejor novela|a la mejor novela]]&nbsp;<small>(1956, 1960, 1962 y 1967)</small></li><li>[[Premio Gran Maestro Damon Knight Memorial]]&nbsp;<small>(1975)</small></li><li>Premio Inkopt&nbsp;<small>(1977)</small></li><li>[[Premio Prometheus en la categoría Hall of Fame]]&nbsp;<small>(1983, 1987, 1996, 1998, 2003 y 2017)</small></li><li>Science Fiction and Fantasy Hall of Fame&nbsp;<small>(1998)</small><span class="wikidata-link noprint"> [[Archivo:Blue_pencil.svg|Ver y modificar los datos en Wikidata|10px|baseline|alt=Ver y modificar los datos en Wikidata|enlace=https://www.wikidata.org/wiki/Q123078?uselang=es#P166]]</span></li></ul>')
    self:preprocess_equals('{{#invoke:Ficha de persona|premios|id=Q34981}}', '')    -- No se obtienen si hay más de media docena.
end

function p:test_tesis()
	-- Pruebas de la tesis
    self:preprocess_equals('{{Ficha de persona|título tesis=Musa Ensete. Ein Beitrag zur Kenntnis der Bananen|año tesis=1867}}', '¡Hola mundo!')
	self:preprocess_equals('{{Ficha de persona|url tesis= https://www.jstor.org/stable/1969950|título tesis=Formes différentielles et cohomologie sur une variété analytique complexe|año tesis = [[1955]]}}', '¡Hola mundo!')
	self:preprocess_equals('{{Ficha de persona|url tesis= https://www.jstor.org/stable/1969950|título tesis=Formes différentielles et cohomologie sur une variété analytique complexe|año tesis = 1955}}', '¡Hola mundo!')    	
	
	--Pruebas del nombre nativo.
	-- Si hay uno
		self:preprocess_equals('{{Ficha de persona|id=Q43499}}', 'Hola mundo!')    	
end
 
return p