Module:User:Benwing2/test-headword

From Wiktionary, the free dictionary
Jump to navigation Jump to search

This is a private module sandbox of Benwing2, for their own experimentation. Items in this module may be added and removed at Benwing2's discretion; do not rely on this module's stability.


local export = {}

local full_headword = require("Module:User:Benwing2/headword").full_headword

function export.test(frame)
	local val1 = full_headword{
		lang = require("Module:languages").getByCode("de"),
		heads = {"Hund"},
		genders = {"m"},
		inflections = {
			{label = "genitive", "Hundes", "Hunds"},
			{label = "plural",
				"Hunde",
				{term = "Hünde", qualifiers = {"nonstandard"}}
			},
			{label = "diminutive",
				{term = "Hündchen", genders = {"n"}},
				{nolink = true, term = "Hündlein", genders = {"n"}}
			}
		},
		categories = {"German nouns"},
	}

	local val2 = full_headword{
		lang = require("Module:languages").getByCode("ru"),
		heads = {"кни́га"},
		genders = {"f-in"},
		inflections = {
			{label = "genitive", "кни́ги"},
			{label = "nominative plural", "кни́ги"},
			{label = "genitive plural", "книг"}
		},
		categories = {"Russian nouns"},
	}

	local val2_autotr = full_headword{
		lang = require("Module:languages").getByCode("ru"),
		heads = {"кни́га"},
		genders = {"f-in"},
		inflections = {
			enable_auto_translit = true,
			{label = "genitive", "кни́ги"},
			{label = "nominative plural", "кни́ги"},
			{label = "genitive plural", "книг"}
		},
		categories = {"Russian nouns"},
	}

	local val2_autotr_poscat = full_headword{
		pagename = "книга",
		lang = require("Module:languages").getByCode("ru"),
		heads = {"кни́га"},
		genders = {"f-in"},
		inflections = {
			enable_auto_translit = true,
			{label = "genitive", "кни́ги"},
			{label = "nominative plural", "кни́ги"},
			{label = "genitive plural", "книг"}
		},
		pos_category = "nouns",
		force_cat_output = true,
	}

	local val3 = full_headword{
		lang = require("Module:languages").getByCode("ru"),
		heads = {"интервьюе́р", "интервью́ер"},
		translits = {"intɛrvʹjuér", "intɛrvʹjújer"},
		genders = {"m-an"},
		inflections = {
			{label = "genitive", "интервьюе́ра", "интервью́ера"},
			{label = "nominative plural", "интервьюе́ры", "интервью́еры"},
			{label = "genitive plural", "интервьюе́ров", "интервью́еров"},
		},
		categories = {"Russian nouns"},
	}

	local val3_new = full_headword{
		lang = require("Module:languages").getByCode("ru"),
		heads = {
			{term = "интервьюе́р", tr = "intɛrvʹjuér"},
			{term = "интервью́ер", tr = "intɛrvʹjújer", q = {"less common"}, separator = " and "},
		},
		genders = {"m-an"},
		inflections = {
			{label = "genitive", "интервьюе́ра", "интервью́ера"},
			{label = "nominative plural", "интервьюе́ры", "интервью́еры"},
			{label = "genitive plural", "интервьюе́ров", "интервью́еров"},
		},
		categories = {"Russian nouns"},
	}

	local val3_multiscript = full_headword{
		lang = require("Module:languages").getByCode("ru"),
		heads = {
			{term = "интервьюе́р", tr = "intɛrvʹjuér"},
			{term = "интервью́ер", tr = "intɛrvʹjújer", q = {"less common"}, separator = " and "},
			{term = "[[غُدّة]] [[بَصَلِيّ|بَصَلِيّة]] [[إحْلِيلِيّ|إحْلِيلِيّة]]", sc = require("Module:scripts").getByCode("Arab")},
		},
		genders = {"m-an"},
		inflections = {
			{label = "genitive", "интервьюе́ра", "интервью́ера"},
			{label = "nominative plural", "интервьюе́ры", "интервью́еры"},
			{label = "genitive plural", "интервьюе́ров", "интервью́еров"},
		},
		categories = {"Russian nouns"},
	}

	local val3_multiscript_wrong = full_headword{
		lang = require("Module:languages").getByCode("ru"),
		heads = {
			{term = "интервьюе́р", tr = "intɛrvʹjuér"},
			{term = "интервью́ер", tr = "intɛrvʹjújer", q = {"less common"}, separator = " and "},
			{term = "[[غُدّة]] [[بَصَلِيّ|بَصَلِيّة]] [[إحْلِيلِيّ|إحْلِيلِيّة]]"},
		},
		genders = {"m-an"},
		inflections = {
			{label = "genitive", "интервьюе́ра", "интервью́ера"},
			{label = "nominative plural", "интервьюе́ры", "интервью́еры"},
			{label = "genitive plural", "интервьюе́ров", "интервью́еров"},
		},
		categories = {"Russian nouns"},
		sc = require("Module:scripts").getByCode("Cyrl"),
	}

	local val4 = full_headword{
		lang = require("Module:languages").getByCode("ar"),
		heads = {"[[غُدّة]] [[بَصَلِيّ|بَصَلِيّة]] [[إحْلِيلِيّ|إحْلِيلِيّة]]"},
		translits = {"ḡudda baṣaliyya ʾiḥlīliyya"},
		genders = {"f"},
		inflections = {
			{label = "plural", enable_auto_translit = true, 
				{term = "غُدَد بَصَلِيَّة إِحْلِيلِيَة", translit = "ḡudad baṣaliyya ʾiḥlīliyya"}},
		},
		categories = {"Arabic nouns"},
	}

	local outputs = {
		val1,
		val2, val2_autotr, val2_autotr_poscat,
		val3, val3_new, val3_multiscript, val3_multiscript_wrong,
		val4,
	}
	return table.concat(outputs, "\n\n")
end

return export