| 1825 | } |
| 1826 | |
| 1827 | void 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 |
nothing calls this directly
no outgoing calls
no test coverage detected