MCPcopy Create free account
hub / github.com/cutelyst/cutelyst / testValidatorDomain_data

Method testValidatorDomain_data

tests/testvalidator.cpp:1827–1941  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1825}
1826
1827void TestValidator::testValidatorDomain_data()
1828{
1829 QTest::addColumn<QString>("url");
1830 QTest::addColumn<QByteArray>("body");
1831 QTest::addColumn<QByteArray>("output");
1832
1833 // **** Start testing ValidatorDomain *****
1834
1835 QByteArray domainBody =
1836 QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"huessenbergnetz.de"_s);
1837 QTest::newRow("valid01") << u"/domain"_s << domainBody << valid;
1838
1839 domainBody = QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"a.de"_s);
1840 QTest::newRow("valid02") << u"/domain"_s << domainBody << valid;
1841
1842 domainBody = QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"a1.de"_s);
1843 QTest::newRow("valid03") << u"/domain"_s << domainBody << valid;
1844
1845 domainBody = QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"example.com."_s);
1846 QTest::newRow("valid04") << u"/domain"_s << domainBody << valid;
1847
1848 domainBody = QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"test-1.example.com."_s);
1849 QTest::newRow("valid05") << u"/domain"_s << domainBody << valid;
1850
1851 // label with max length of 63 chars
1852 domainBody = QByteArrayLiteral("field=") +
1853 QUrl::toPercentEncoding(
1854 u"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk.com"_s);
1855 QTest::newRow("valid06") << u"/domain"_s << domainBody << valid;
1856
1857 // total length of 253 chars
1858 domainBody = QByteArrayLiteral("field=") +
1859 QUrl::toPercentEncoding(
1860 u"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcde."
1861 "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk."
1862 "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk."
1863 "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk.com"_s);
1864 QTest::newRow("valid07") << u"/domain"_s << domainBody << valid;
1865
1866 // disabled on MSVC because that shit still has problems with utf8 in 2018...
1867#ifndef _MSC_VER
1868 domainBody = QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"hüssenbergnetz.de"_s);
1869 QTest::newRow("valid08") << u"/domain"_s << domainBody << valid;
1870
1871 domainBody =
1872 QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"موقع.وزارة-الاتصالات.مصر"_s);
1873 QTest::newRow("valid09") << u"/domain"_s << domainBody << valid;
1874#endif
1875
1876 // digit in non puny code TLD
1877 domainBody = QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"example.com1"_s);
1878 QTest::newRow("invalid01") << u"/domain"_s << domainBody << invalid;
1879
1880 // one char tld
1881 domainBody = QByteArrayLiteral("field=") + QUrl::toPercentEncoding(u"example.c"_s);
1882 QTest::newRow("invalid02") << u"/domain"_s << domainBody << invalid;
1883
1884 // starts with digit

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected