Keyboard

↓ ↑
move between the rows you can see
→
open a feature, then step into it
←
close a feature, or step out to the one above
Enter
go to the page in focus
Tab
the same rows, plus everything else on the page
/
search the whole report
m
open or close the navigation drawer
Esc
leave the search box, or close the drawer
?
this list

Turns a name into the URL of its page

All 24 scenarios hold

A page needs two names: the title a reader sees, and the file name the URL ends in. Both come from the test that produced the page. A class or method that carries a @DisplayName supplies its own title, and the rules below are what happens when it does not.

A name that keeps a letter through the ASCII fold slugs exactly as it always has. A name that does not — one written in a script the fold has no answer for — keeps its own characters instead of collapsing to an unusable empty filename, and a name with no letters or digits anywhere falls back to a stable hash so that two of them still get two filenames.

Words are separated before the fold runs. A name that holds a space or an underscore is separated there and is not also split at its capitals.

expected outcome broken scenario
ScenarioNameURL?
CamelCaseLeapYearRulesleap-year-rules
An acronym beside a wordparseHTMLDocumentparse-html-document
A digit before a wordtest123Methodtest123-method
A single letterAa
Snake caseleap_year_rulesleap-year-rules
Snake case with capitalsTestClass_MethodNametestclass-methodname
SpacesLeap Year Rulesleap-year-rules
Spaces and underscorestest_method with spacestest-method-with-spaces
Punctuation inside the nametest@example.comtest-example-com
Punctuation ending the nameA Custom Test Title!a-custom-test-title
Accented lettersnaïve façadenaive-facade
Ligature lettersGrüße aus Münchengrusse-aus-munchen
Nordic lettersÆØÅaeoa
Thorn without Latin baseÞingvellirthingvellir
Compatibility ligaturefile flowfile-flow
Greek scriptΕλληνικάελληνικά
Cyrillic scriptМосквамосква
CJK script日本語のテスト日本語のテスト
Cyrillic camelCaseпроверкаИменипроверка-имени
Digits and no letters123123
No letters or digits!!!unnamed-00008001
Another with neither???unnamed-0000f45f
An empty name“”“”
No name at all