Sitelet https://github.com/appium/python-client/pull/1022
Skip to content

feat: Add flutter integration driver commands and tests - #1022

Merged
mykola-mokhnach merged 22 commits into
appium:masterfrom
MummanaSubramanya:add-flutter-integration-driver
Sep 23, 2024
Merged

mykola-mokhnach merged 22 commits into
appium:masterfrom
MummanaSubramanya:add-flutter-integration-driver

Conversation

@MummanaSubramanya

Copy link
Copy Markdown
Contributor

@KazuCocoa

KazuCocoa commented Sep 19, 2024 •

Copy link
Copy Markdown
Member

Could you add tests in unit test as possible instead of functional test?
https://github.com/appium/python-client/tree/master/test/unit

As a client, what http request should be sent is important but it does not need to test driver side. Driver's response can be a mock.

Existing functional tests include tests for appium project's drivers themselves. They would be removed as not necessary for client tests.

@KazuCocoa

KazuCocoa commented Sep 19, 2024 •

Copy link
Copy Markdown
Member

Could you use flutter_intergation namespace or flutter/flutter_integration?

Comment thread appium/webdriver/common/flutterby.py Outdated
Comment thread appium/webdriver/flutter_finder.py Outdated
Comment thread appium/webdriver/extensions/flutter/flutter_commands.py Outdated
Comment thread appium/webdriver/extensions/flutter/flutter_commands.py Outdated
Comment thread appium/webdriver/flutter_finder.py Outdated
Comment thread appium/webdriver/extensions/flutter/flutter_commands.py Outdated
@KazuCocoa

Copy link
Copy Markdown
Member

I left some comments.

  • convert tests to unit test to focus on each client method's input/output (fast and less flakiness as client)
    • Existing unit test should help to see how to check the http request's input/output as a client
  • name space
  • some code improvement

Thank you for the contribution, btw :)

Comment thread appium/options/flutter/flutter_element_wait_timeout_option.py Outdated
Comment thread appium/options/flutter/flutter_element_wait_timeout_option.py Outdated
Comment thread appium/webdriver/extensions/flutter/flutter_commands.py Outdated
Comment thread appium/webdriver/extensions/flutter/flutter_commands.py Outdated
Comment thread appium/webdriver/extensions/flutter/flutter_commands.py Outdated
Comment thread appium/webdriver/extensions/flutter/flutter_commands.py Outdated
Comment thread appium/webdriver/extensions/flutter/flutter_commands.py Outdated
Comment thread appium/webdriver/flutter_finder.py Outdated
Comment thread test/functional/flutter/commands_test.py Outdated
Comment thread test/functional/flutter/commands_test.py Outdated
Comment thread test/functional/flutter/helper/test_helper.py Outdated
@MummanaSubramanya

Copy link
Copy Markdown
Contributor Author

Could you use flutter_intergation namespace or flutter/flutter_integration?

updated

Comment thread appium/options/flutter_integration/base.py
Comment thread appium/webdriver/extensions/flutter_integration/scroll_directions.py Outdated
Comment thread appium/webdriver/flutter_finder.py Outdated
Comment thread test/functional/flutter_integration/commands_test.py Outdated
Comment thread test/functional/flutter_integration/commands_test.py
Comment thread appium/webdriver/extensions/flutter_integration/flutter_commands.py
Comment thread appium/webdriver/extensions/flutter_integration/flutter_commands.py Outdated
Comment thread appium/webdriver/extensions/flutter_integration/flutter_commands.py
Comment thread appium/webdriver/common/appiumby.py
Comment thread appium/webdriver/flutter_finder.py
Comment thread .github/workflows/functional-test.yml
@MummanaSubramanya

Copy link
Copy Markdown
Contributor Author

@KazuCocoa @mykola-mokhnach Thank you very much for your review. I have addressed all the comments and added both unit tests and end-to-end tests. I'm happy to report that all tests have passed.

Comment thread appium/webdriver/extensions/flutter_integration/flutter_commands.py Outdated

@mykola-mokhnach mykola-mokhnach left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mykola-mokhnach
mykola-mokhnach merged commit 2ffa930 into appium:master Sep 23, 2024
@Sanmejie

Sanmejie commented Sep 23, 2024 •

Copy link
Copy Markdown

image
The three methods provided in the diagram do not use the flutter integration driver commands feature, is there any other recommended method to install?

update
I successfully installed it by replacing the .py files

@KazuCocoa

KazuCocoa commented Sep 23, 2024 •

Copy link
Copy Markdown
Member

It is not released yet. I'll release this tonight. (for via pypi)

@KazuCocoa

Copy link
Copy Markdown
Member

4.2.0 is available now

@KazuCocoa KazuCocoa added size:M contribution size: M size:L contribution size: L and removed size:M contribution size: M labels Oct 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L contribution size: L

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants