Module:Hatnote/testcases

Documentation for this module may be created at Module:Hatnote/testcases/doc

local pageTitle = mw.title.getCurrentTitle().text

return {
	_main = {
		options = {
			mode = 'method',
			nowiki = true,
			unpk = true,
		},
		tests = {
			{
				{{}, nil},
				string.format(
					'<div role="note" data-nosnippet class="notice hatnote context-link main dablink">Main article: [[:%s]]</div>',
					pageTitle
				),
			},
			{
				{{}, {}},
				string.format(
					'<div role="note" data-nosnippet class="notice hatnote context-link main dablink">Main article: [[:%s]]</div>',
					pageTitle
				),
			},
			{
				{{}, {selfref = true}},
				string.format(
					'<div role="note" data-nosnippet class="notice hatnote context-link main dablink selfref">Main article: [[:%s]]</div>',
					pageTitle
				),
			},
			{
				{{'Foo'}, nil},
				'<div role="note" data-nosnippet class="notice hatnote context-link main dablink">Main article: [[:Foo]]</div>',
			},
			{
				{{'Foo#Bar'}, nil},
				'<div role="note" data-nosnippet class="notice hatnote context-link main dablink">Main article: [[:Foo#Bar|Foo §&nbsp;Bar]]</div>',
			},
			{
				{{'Foo', 'Bar'}, nil},
				'<div role="note" data-nosnippet class="notice hatnote context-link main dablink">Main articles: [[:Foo]]&#32;and&#32;[[:Bar]]</div>',
			},
			{
				{{'Foo', 'Bar', 'Baz'}, nil},
				'<div role="note" data-nosnippet class="notice hatnote context-link main dablink">Main articles: [[:Foo]],&#32;[[:Bar]],&#32;and&#32;[[:Baz]]</div>',
			},
			{
				{{'Category:Foo'}, nil},
				'<div role="note" data-nosnippet class="notice hatnote context-link main dablink">Main page: [[:Category:Foo]]</div>',
			},
			{
				{{'Category talk:Foo'}, nil},
				'<div role="note" data-nosnippet class="notice hatnote context-link main dablink">Main page: [[:Category talk:Foo]]</div>',
			},
			{
				{{}, {selfref = true}},
				string.format(
					'<div role="note" data-nosnippet class="notice hatnote context-link main dablink selfref">Main article: [[:%s]]</div>',
					pageTitle
				)
			},
		}
	}
}