- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 8.6k
 
          [dotnet] Start adding nullable reference type annotations to the Support package
          #14779
        
          New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
  
    [dotnet] Start adding nullable reference type annotations to the Support package
  
  #14779
              Conversation
          PR Reviewer Guide 🔍Here are some key observations to aid the review process: 
  | 
    
Support package
      
          PR Code Suggestions ✨Explore these optional code suggestions: 
 
  | 
    
| 
           Even don't spend your time on   | 
    
| 
           @nvborisenko I get it 😁 But it's so small, and so simple to get it working. This PR does most of the work. The   | 
    
…d and langversion
…enium into null-support-1
…port` package (SeleniumHQ#14779) * [dotnet] All nullable reference type annotations to support (part 1) * minimize diffs * Add exception XMLDoc to `PopupWindowFinder` * Make some updates to `SelectElement` * [dotnet] Update bazel build to recognize Support as nullable-annotated and langversion * fix `nullable` variable name
…port` package (SeleniumHQ#14779) * [dotnet] All nullable reference type annotations to support (part 1) * minimize diffs * Add exception XMLDoc to `PopupWindowFinder` * Make some updates to `SelectElement` * [dotnet] Update bazel build to recognize Support as nullable-annotated and langversion * fix `nullable` variable name
User description
Thanks for contributing to Selenium!
A PR well described will help maintainers to quickly review and merge it
Before submitting your PR, please check our contributing guidelines.
Avoid large PRs, help reviewers by making them as simple and short as possible.
Description
This implements nullable reference types and the requisite null checks (alongside some modernization) on the first half of the
supportpackage, as well as types in thesupportnamespace but in the regular package.Motivation and Context
Contributes to #14640
Types of changes
Checklist
PR Type
enhancement, bug_fix
Description
Changes walkthrough 📝
18 files
FindElementEventArgs.cs
Add nullability and exception handling to FindElementEventArgsdotnet/src/support/Events/FindElementEventArgs.cs
GetShadowRootEventArgs.cs
Add nullability and exception handling to GetShadowRootEventArgsdotnet/src/support/Events/GetShadowRootEventArgs.cs
WebDriverExceptionEventArgs.cs
Add nullability and exception handling to WebDriverExceptionEventArgsdotnet/src/support/Events/WebDriverExceptionEventArgs.cs
WebDriverNavigationEventArgs.cs
Add nullability and exception handling to WebDriverNavigationEventArgsdotnet/src/support/Events/WebDriverNavigationEventArgs.cs
WebDriverScriptEventArgs.cs
Add nullability and exception handling to WebDriverScriptEventArgsdotnet/src/support/Events/WebDriverScriptEventArgs.cs
WebElementEventArgs.cs
Add nullability and exception handling to WebElementEventArgsdotnet/src/support/Events/WebElementEventArgs.cs
WebElementValueEventArgs.cs
Add nullability and exception handling to WebElementValueEventArgsdotnet/src/support/Events/WebElementValueEventArgs.cs
WebDriverExtensions.cs
Enhance WebDriverExtensions with nullability and improved logicdotnet/src/support/Extensions/WebDriverExtensions.cs
LoadableComponentException.cs
Add nullability annotations to LoadableComponentExceptiondotnet/src/support/UI/LoadableComponentException.cs
LoadableComponent{T}.cs
Add nullability and improve documentation in LoadableComponentdotnet/src/support/UI/LoadableComponent{T}.cs
PopupWindowFinder.cs
Enhance PopupWindowFinder with nullability and simplified logicdotnet/src/support/UI/PopupWindowFinder.cs
SlowLoadableComponent{T}.cs
Add nullability and improve exception handling inSlowLoadableComponentdotnet/src/support/UI/SlowLoadableComponent{T}.cs
UnexpectedTagNameException.cs
Add nullability annotations to UnexpectedTagNameExceptiondotnet/src/support/UI/UnexpectedTagNameException.cs
DefaultWait{T}.cs
Enhance DefaultWait with nullability and improved logicdotnet/src/webdriver/Support/DefaultWait{T}.cs
IClock.cs
Enable nullable reference types in IClockdotnet/src/webdriver/Support/IClock.cs
IWait{T}.cs
Add nullability annotations to IWait interfacedotnet/src/webdriver/Support/IWait{T}.cs
SystemClock.cs
Enable nullable reference types and simplify SystemClockdotnet/src/webdriver/Support/SystemClock.cs
WebDriverWait.cs
Enable nullable reference types and simplify WebDriverWaitdotnet/src/webdriver/Support/WebDriverWait.cs
1 files
EventFiringWebDriverTest.cs
Set default values for mocks in EventFiringWebDriverTestdotnet/test/support/Events/EventFiringWebDriverTest.cs
1 files
WebDriver.Support.csproj
Enable nullable annotations in project filedotnet/src/support/WebDriver.Support.csproj