@@ -54,18 +54,142 @@ const xml = `<body>
5454 </div>
5555 <input type="hidden" name="return_url" value="" id="return_url" />
5656
57- <div class="ps-submenu-root">
58- <ul class="ps-submenu-root">
59- <li class="ps-menu-button">Adhemar da Silva</li>
60- <li class="ps-menu-button">HelloWorld</li>
61- <li class="ps-menu-button">Hallo</li>
62- </ul>
63- <ul class="ps-submenu-root">
64- <li class="ps-menu-button">Adhemar da Silva</li>
65- <li class="ps-menu-button">HelloWorld</li>
66- <li class="ps-menu-button">Authoring</li>
67- </ul>
68- </div>
57+ <ul class="css-ewdv3l">
58+ <li class="ps-menuitem-root css-dq4uaz">
59+ <a
60+ aria-current="page"
61+ class="ps-menu-button active"
62+ data-testid="ps-menu-button-test-id"
63+ tabindex="0"
64+ title="aaa"
65+ href="/"
66+ ><span class="ps-menu-icon css-2wa2k3"
67+ ><i aria-hidden="true" class="icon home lg outline"></i></span
68+ ><span class="ps-menu-label css-12w9als">aaa</span></a
69+ >
70+ </li>
71+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
72+ <a
73+ class="ps-menu-button"
74+ data-testid="ps-menu-button-test-id"
75+ title="Dashboard"
76+ tabindex="0"
77+ ><span class="ps-menu-icon css-2wa2k3"
78+ ><i
79+ aria-hidden="true"
80+ class="icon tachometer alternate"
81+ ></i></span
82+ ><span class="ps-menu-label css-12w9als">aaa</span
83+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
84+ ><span class="css-honxw6"></span></span
85+ ></a>
86+ </li>
87+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
88+ <a
89+ class="ps-menu-button"
90+ data-testid="ps-menu-button-test-id"
91+ title="aaa"
92+ tabindex="0"
93+ ><span class="ps-menu-icon css-2wa2k3"
94+ ><i aria-hidden="true" class="icon books"></i></span
95+ ><span class="ps-menu-label css-12w9als">Authoring</span
96+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
97+ ><span class="css-honxw6"></span></span
98+ ></a>
99+ </li>
100+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
101+ <a
102+ class="ps-menu-button"
103+ data-testid="ps-menu-button-test-id"
104+ title="aaa"
105+ tabindex="0"
106+ ><span class="ps-menu-icon css-2wa2k3"
107+ ><i aria-hidden="true" class="icon ballot check"></i></span
108+ ><span class="ps-menu-label css-12w9als">aaa</span
109+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
110+ ><span class="css-honxw6"></span></span
111+ ></a>
112+ </li>
113+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
114+ <a
115+ class="ps-menu-button"
116+ data-testid="ps-menu-button-test-id"
117+ title="aaa"
118+ tabindex="0"
119+ ><span class="ps-menu-icon css-2wa2k3"
120+ ><i aria-hidden="true" class="icon book reader"></i></span
121+ ><span class="ps-menu-label css-12w9als">aaa</span
122+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
123+ ><span class="css-honxw6"></span></span
124+ ></a>
125+ </li>
126+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
127+ <a
128+ class="ps-menu-button"
129+ data-testid="ps-menu-button-test-id"
130+ title="aaa"
131+ tabindex="0"
132+ ><span class="ps-menu-icon css-2wa2k3"
133+ ><i aria-hidden="true" class="icon school"></i></span
134+ ><span class="ps-menu-label css-12w9als">aaa</span
135+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
136+ ><span class="css-honxw6"></span></span
137+ ></a>
138+ </li>
139+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
140+ <a
141+ class="ps-menu-button"
142+ data-testid="ps-menu-button-test-id"
143+ title="aaa"
144+ tabindex="0"
145+ ><span class="ps-menu-icon css-2wa2k3"
146+ ><i aria-hidden="true" class="icon user"></i></span
147+ ><span class="ps-menu-label css-12w9als">aaa</span
148+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
149+ ><span class="css-honxw6"></span></span
150+ ></a>
151+ </li>
152+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
153+ <a
154+ class="ps-menu-button"
155+ data-testid="ps-menu-button-test-id"
156+ title="aaa"
157+ tabindex="0"
158+ ><span class="ps-menu-icon css-2wa2k3"
159+ ><i aria-hidden="true" class="icon cog"></i></span
160+ ><span class="ps-menu-label css-12w9als">aaa</span
161+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
162+ ><span class="css-honxw6"></span></span
163+ ></a>
164+ </li>
165+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
166+ <a
167+ class="ps-menu-button"
168+ data-testid="ps-menu-button-test-id"
169+ title="aaa"
170+ tabindex="0"
171+ ><span class="ps-menu-icon css-2wa2k3"
172+ ><i aria-hidden="true" class="icon tablet alternate"></i></span
173+ ><span class="ps-menu-label css-12w9als">aaa</span
174+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
175+ ><span class="css-honxw6"></span></span
176+ ></a>
177+ </li>
178+ <li class="ps-menuitem-root ps-submenu-root css-x7nyah">
179+ <a
180+ class="ps-menu-button"
181+ data-testid="ps-menu-button-test-id"
182+ title="aaa"
183+ tabindex="0"
184+ ><span class="ps-menu-icon css-2wa2k3"
185+ ><i aria-hidden="true" class="icon tools"></i></span
186+ ><span class="ps-menu-label css-12w9als">aaa</span
187+ ><span class="ps-submenu-expand-icon css-1cuxlhl"
188+ ><span class="css-honxw6"></span></span
189+ ></a>
190+ </li>
191+ </ul>
192+
69193</body>` ;
70194
71195describe ( 'Locator' , ( ) => {
@@ -294,13 +418,11 @@ describe('Locator', () => {
294418 } ) ;
295419
296420 it ( 'should be able to locate complicated locator' , ( ) => {
297- const l = Locator . build ( '.ps-menu-button' )
298- . withText ( 'Authoring' )
299- . inside ( '.ps-submenu-root:nth-child(2)' ) ;
421+ const l = Locator . build ( '.ps-menu-button' ) . withText ( 'Authoring' ) . inside ( '.ps-submenu-root:nth-child(3)' ) ;
300422
301423 const nodes = xpath . select ( l . toXPath ( ) , doc ) ;
302424 expect ( nodes ) . to . have . length ( 1 , l . toXPath ( ) ) ;
303- expect ( nodes [ 0 ] . firstChild . data ) . to . eql ( 'Authoring' , l . toXPath ( ) ) ;
425+ expect ( nodes [ 0 ] . firstChild . nextSibling . firstChild . data ) . to . eql ( 'Authoring' , l . toXPath ( ) ) ;
304426 } ) ;
305427
306428 it ( 'should find element with last of type with text' , ( ) => {
0 commit comments