Skip to content

Commit 222a241

Browse files
committed
Convert _parentElement to _parentComponent
1 parent 2aaccf8 commit 222a241

File tree

4 files changed

+19
-13
lines changed

4 files changed

+19
-13
lines changed

src/Bellatrix.Web/components/core/Component.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ public ComponentsList<TComponent> CreateAll<TComponent, TBy>(TBy by)
226226
}
227227
else
228228
{
229-
elementsCollection = new ComponentsList<TComponent>(by, WrappedElement, ShouldCacheElement);
229+
elementsCollection = new ComponentsList<TComponent>(by, this, ShouldCacheElement);
230230
}
231231

232232
CreatedComponents?.Invoke(this, new ComponentActionEventArgs(this));

src/Bellatrix.Web/components/core/ComponentList/ComponentsList.cs

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,21 @@
1212
// <author>Anton Angelov</author>
1313
// <site>https://bellatrix.solutions/</site>
1414

15+
using System;
16+
using System.Collections;
17+
using System.Collections.Generic;
18+
using System.Linq;
19+
using Bellatrix.Utilities;
1520
using Bellatrix.Web.Waits;
21+
using OpenQA.Selenium;
1622

1723
namespace Bellatrix.Web;
1824

1925
public class ComponentsList<TComponent> : IEnumerable<TComponent>
2026
where TComponent : Component
2127
{
2228
private readonly FindStrategy _by;
23-
private readonly IWebElement _parentElement;
29+
private readonly Component _parentComponent;
2430
private readonly List<TComponent> _foundElements;
2531
private readonly bool _shouldCacheFoundElements;
2632
private List<TComponent> _cachedElements;
@@ -39,7 +45,7 @@ public ComponentsList(
3945
Component parenTComponent)
4046
{
4147
_by = by;
42-
_parentElement = parenTComponent;
48+
_parentComponent = parenTComponent;
4349
_foundElements = new List<TComponent>();
4450
WrappedDriver = ServicesCollection.Current.Resolve<IWebDriver>();
4551
}
@@ -143,10 +149,10 @@ IEnumerable<TComponent> GetAndWaitNativeElements()
143149
foreach (var nativeElement in nativeElements)
144150
{
145151
var elementRepository = new ComponentRepository();
146-
if (_parentElement != null)
152+
if (_parentComponent != null)
147153
{
148154
var element =
149-
elementRepository.CreateComponentWithParent<TComponent>(_by, _parentElement, nativeElement, index++, _shouldCacheFoundElements);
155+
elementRepository.CreateComponentWithParent<TComponent>(_by, _parentComponent, nativeElement, index++, _shouldCacheFoundElements);
150156
yield return element;
151157
}
152158
else
@@ -162,11 +168,11 @@ IEnumerable<TComponent> GetAndWaitNativeElements()
162168

163169
private IEnumerable<IWebElement> WaitWebDriverElements()
164170
{
165-
var elementFinder = _parentElement == null
171+
var elementFinder = _parentComponent == null
166172
? new NativeElementFinderService(WrappedDriver)
167-
: new NativeElementFinderService(_parentElement);
173+
: new NativeElementFinderService(_parentComponent.WrappedElement);
168174
var elementWaiter = new ComponentWaitService();
169-
if (_parentElement == null)
175+
if (_parentComponent == null)
170176
{
171177
return ConditionalWait(elementFinder);
172178
}

src/Bellatrix.Web/findstrategies/Angular/ElementCreateExtensions.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,14 @@ public static TComponent CreateByNgSelectedOption<TComponent>(this Component ele
2828
where TComponent : Component => element.Create<TComponent, ByNgSelectedOption>(new ByNgSelectedOption(selectedOption));
2929

3030
public static ComponentsList<TComponent> CreateAllByNgBinding<TComponent>(this Component element, string binding)
31-
where TComponent : Component => new ComponentsList<TComponent>(new ByNgBinding(binding), element.WrappedElement);
31+
where TComponent : Component => new ComponentsList<TComponent>(new ByNgBinding(binding), element);
3232

3333
public static ComponentsList<TComponent> CreateAllByNgModel<TComponent>(this Component element, string model)
34-
where TComponent : Component => new ComponentsList<TComponent>(new ByNgModel(model), element.WrappedElement);
34+
where TComponent : Component => new ComponentsList<TComponent>(new ByNgModel(model), element);
3535

3636
public static ComponentsList<TComponent> CreateAllByNgRepeater<TComponent>(this Component element, string repeater)
37-
where TComponent : Component => new ComponentsList<TComponent>(new ByNgRepeater(repeater), element.WrappedElement);
37+
where TComponent : Component => new ComponentsList<TComponent>(new ByNgRepeater(repeater), element);
3838

3939
public static ComponentsList<TComponent> CreateAllByNgSelectedOption<TComponent>(this Component element, string selectedOption)
40-
where TComponent : Component => new ComponentsList<TComponent>(new ByNgSelectedOption(selectedOption), element.WrappedElement);
40+
where TComponent : Component => new ComponentsList<TComponent>(new ByNgSelectedOption(selectedOption), element);
4141
}

templates/Bellatrix.Web.GettingStarted/33. Add New Find Locators/ElementCreateExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ public static class ElementCreateExtensions
77
// public static TComponent CreateByIdStartingWith<TComponent>(this Element element, string idPrefix)
88
// where TComponent : Element => ComponentCreateService.Create<TComponent, FindIdStartingWithStrategy>(new FindIdStartingWithStrategy(idPrefix));
99
public static ComponentsList<TComponent> CreateAllByIdStartingWith<TComponent>(this Component element, string idEnding)
10-
where TComponent : Component => new ComponentsList<TComponent>(new FindIdStartingWithStrategy(idEnding), element.WrappedElement);
10+
where TComponent : Component => new ComponentsList<TComponent>(new FindIdStartingWithStrategy(idEnding), element);
1111
}

0 commit comments

Comments
 (0)