1
0
mirror of https://github.com/MontFerret/ferret.git synced 2024-12-14 11:23:02 +02:00
Commit Graph

59 Commits

Author SHA1 Message Date
Tim Voronov
0c6d4e6401
Bugfix/http driver xpath (#725)
* Fixed XPath eval in http driver for attrribute values

* Added unit test to cover http XPath func eval

* Added integration test for covering XPath by CDP driver
2022-01-28 15:19:50 -05:00
Tim Voronov
8d8afed51f
Fixed element not found error (#724) 2022-01-17 10:24:27 -05:00
Tim Voronov
f7f17ea5b4
Feature/network events (#688)
* Added new network events

* Refactored runtime Event streaming

* Added support of using keywords as variables

* Added support of body property in response event

* Added example of subscription to network response

* Added example of subscription to network requests

* Fixed infinite loop bug

* Updated Google example

* Updated unit tests

* Reenamed Event to Message

* Fixed navvigation filtering by frame
2021-11-22 14:36:28 -05:00
Tim Voronov
a17a0a1819
Added support of FILTER clause in WAITFOR EVENT expression (#685)
* Added support of FILTER clause in WAITFOR EVENT expression

* Fixed exampl query

* Fixed inability of using keywords as an object property
2021-10-22 23:54:11 -04:00
Tim Voronov
a049f30214
Fixed parsing escaped new line character (#677) 2021-10-17 23:11:27 -04:00
Tim Voronov
0c4a18cb76 Added example of handling lazy loading lists 2021-09-20 01:59:50 -04:00
Tim Voronov
847dda1f10
Feature/pre compiled eval scripts (#658)
* Added support of pre-compiled eval expressions

* Added unit tests for eval.Function

* Added RemoteType and RemoteObjectType enums

* Refactored function generation

* Refactored Document and Element loading logic

* Removed redundant fields from cdp.Page

* Exposed eval.Runtime to external callers

* Added new eval.RemoteValue interface
2021-09-19 19:35:54 -04:00
Tim Voronov
90427cd537
Feature/new selector type (#657)
* Added remote type reference resolver

* Added support of XPath query selector

* Added CDP e2e testss covering XPath integration

* Added additional CDP e2e tests covering XPath integration

* Added type check to QuerySelector casting function

* Fixed XPath e2e tests

* Fixed vuln issue

* Added support of XPath selectors to http driver

* Added e2e tests for XPAth
2021-09-16 21:40:20 -04:00
Tim Voronov
e4e98830a0
Feature/eval template (#651)
* Refactored use of eval

* Disable unstable unit test
2021-09-07 16:33:30 -04:00
Tim Voronov
e6dd5689b4
Bugfix/e2e tests (#648)
* Fixed logger level

* Fixed WAITFOR EVENT parser

* Added tracing to Network Manager

* Updated logging

* Swtitched to value type of logger

* Added tracing

* Increased websocket maximum buffer size

* Ignore unimportant error message

* Added support of new CDP API for layouts

* Switched to value type of logger

* Added log level

* Fixed early context cancellation

* Updated example of 'click' action

* Switched to val for elements lookup

* Fixed unit tests

* Refactored 'eval' module

* Fixed SetStyle eval expression

* Fixed style deletion

* Updated logic of setting multiple styles
2021-09-02 11:09:48 -04:00
Tim Voronov
742bdae0ae
Feature/#263 waitfor event (#590)
* Added new WAITFOR syntax

* Added support of event options

* Added support of options

* Added support of using WAITFOR EVENT in variable assignment
2021-07-13 21:34:22 -04:00
Tim Voronov
ae352e2e6b
Fixed selection of text containing special characters (#619) 2021-04-23 15:36:53 -04:00
Tim Voronov
5119d62838
Feature/#478 keyboard events (#618)
* Added support of pressin special keys

* Linting
2021-04-23 10:42:31 -04:00
Tim Voronov
d55bce325c
Bugfix/#597 headers panic (#598)
* Remodeled HTTPHeaders

* Remodeled HTTPCookies
2021-03-26 12:01:00 -04:00
Tim Voronov
ff8c15eb67
Feature/#577 spa routing (#584)
* Added support of getting URL dynamically
2021-02-16 09:49:26 -05:00
Tim Voronov
526916efb6
Bugfix/#575 element children (#580)
* Fixed retreival of child elements

* Fixed formatting

* Set tree depth to 0

* Removed redundant code
2020-12-19 13:42:57 -05:00
Tim Voronov
8629b57fa7
Added GetParentElement to HTMLElement struct (#571)
* Added GetParentElement to HTMLElement struct

* Fixed linter issue

* Fixed formatting
2020-11-20 23:09:12 -05:00
Tim Voronov
7eed93721c
Added support of computed styles (#570)
* Added support of computed styles

* Updated style updates

* Fixed linter issues

* Updated styles manipulation in static driver

* Updated e2e tests

* Updated methods

* Updated e2e tests

* Updated README
2020-11-20 20:09:21 -05:00
Tim Voronov
01088247e2
Added support of Element.nextElementSibling and Element.previousEleme… (#569)
* Added support of Element.nextElementSibling and Element.previousElementSibling

* Fixed linting issues

* Removed reedundant logger use
2020-11-13 21:48:00 -05:00
Tim Voronov
dca7267e82
Chore/actions (#568)
* Renamed REGEXP_REPLACE to REGEX_REPLACE in e2e tests

* Updated example test suites

* Fixed config file

* Updated go.sum

* Switched back to ubuntu

* Added release action
2020-11-10 21:13:29 -05:00
Tim Voronov
162dd07346
Feature/425 iframe navigation (#535)
* Updated navigation logic

* Fixed goroutine deadlock

* Fixed closing chan

* Added support of waiting for individual frame navigation

* Updated EventLoop API in order to avoid double closing of event sources

* Fixed attr retrieval

* Removed redundant println

* Updated DOM Readiness check
2020-07-13 14:13:03 -04:00
Tim Voronov
2643321e0f
Migration to lab (#526)
* Switched to Lab for e2e tests

* Switched to binary

* Updated lab installation

* Updated use of Lab installer

* updates

* Changed lab installation path

* Updated use of installer

* Works

* Added additional functions

* Updated some tests

* Updated go.sum

* Works

* Refactored assertions

* Added tests for testing.True

* Added tests for testing.None

* Added tests for testing.Lte

* Added tests for testing.Lt

* Added generic consturctor

* Added tests for testing.Len

* Added tests for testing.Gte

* Added tests for testing.Gt

* Added tests for testing.False

* Added tests for testing.Empty

* Added tests for testing.Fail

* Added tests for testing.Equal

* Added tests for testing.Include

* Updated urls in static page tests

* Fixed namespace unit tests

* Fixed unit test for testing.Len

* Updated E2E scripts

* Updaes

* Updated Chrome in CI/CD

* Added e2e for example test click.fql

* Added suite cases for example scripts

* Updated examples

* Updated

* Added type assertions

* Updated Chrome opts and disabled headers and cookies related tests

* Fixed iframes example

* Increased timeouts in navigation examples

* Updated value example

* Updated comments

* Disabled cookies examples

* Fixed static url

* Disabled headers examples

* Disabled UA test

* Simplified wait logic

* Added base testing module

* Fixes after codereview

* Disabled failing tests
2020-06-17 17:37:01 -04:00
Tim Voronov
fd6271b7db
Feature/#382 response cdp (#450)
* wip

* Added support of response information to CDP driver

* Fixed response look up
2020-02-11 20:06:04 -05:00
Tim Voronov
4af0e0f15f
Added possibility to load pages from memory (#434)
* Added possibility to load pages from memory

* Fixed indent
2020-01-04 12:57:41 -05:00
Tim Voronov
145a16f97d
Bugfix/#421 xpath (#435)
* Fixed attr retrieval using XPATH in CDP

* Updated single node value in CDP

* Added e2e test

* Fixed attr retrieval with XPATH for HTTP driver

* Update Makefile

* Update attr.fql
2019-12-29 12:46:46 -05:00
Tim Voronov
fe7b45df6e
Bugfix/#399 navigation (#432)
* Refactored networking

* Some work

* Added event loop

* Renamed EventHandler to Handler

* wip

* Removed console logs

* Added DOMManager

* Refactored frame managment

* Fixes

* Fixed concurrency issues

* Fixed unit tests

* Improved EventLoop api

* Some fixes

* Refactored event loop.

* Improved logic of initial page load

* Cleaned up

* Fixed linting issues

* Fixed dom.Manager.Close

* SOme works

* Fixes

* Removed fmt.Println statements

* Refactored WaitForNavigation

* Removed filter for e2e tests

* Made Cookies Measurable

* Made Cookies KeyedCollection

* Fixes after code review

* Updated e2e tests for iframes

* Fixed iframe lookup in e2e tests

* Added comments
2019-12-24 18:47:21 -05:00
Gabriel Marinkovic
a1e5c93066 bugfix: dynamic test didn't use the dynamic DOCUMENT element 2019-10-07 16:17:06 +02:00
Tim Voronov
d144c618eb Added BLUR function 2019-09-07 12:59:37 -04:00
Tim Voronov
fcd0a21e75
Added click count (#377)
* Added click count
2019-09-07 01:59:32 -04:00
Tim Voronov
2d645434d8
Externalized common timeout values (#371)
* Externalized common timeout values

* Updated go.sum
2019-09-05 12:17:22 -04:00
Tim Voronov
9b762d32ee
Feature/#360 default driver params (#372)
* Added default headers and cookies

* wip

* Added tests

* Added default headers and cookies to HTTP driver

* Removed unused struct prop
2019-09-05 11:49:21 -04:00
Tim Voronov
af1125c8e9
Added INPUT_CLEAR function (#366)
* Added INPUT_CLEAR function

* Fixed linting issue

* Fixed formatting
2019-09-01 16:09:35 -04:00
Tim Voronov
171f63bcc6
Update click_by_selector.fql 2019-08-28 20:53:58 -04:00
Tim Voronov
f39face8bf
Bugfix/click (#355)
* Added ability to use ClickBySelector with an element

* Fixes

* Increased timeout time
2019-08-24 20:26:27 -04:00
Tim Voronov
6ec50c5e43
Bugfix/inner text html by selector (#347)
* Fixed inner text

* Fixed inner html

* Updated set inner html and inner text

* Changed mechanism of reading and writing inner text and html

* updated makefile

* Added e2e tests

* Updated makefile

* Updated changelog

* Reverted dynamic page example
2019-08-05 19:57:02 -04:00
Tim Voronov
11bf8c365a
Fixed headers (#348)
* Fixed headers

* Added e2e for static pages
2019-08-04 17:25:47 -04:00
Tim Voronov
7e6b3bf15d
Feature/focus (#340)
* Added and implemented Focus and FocusBySelector methods

* Added e2e tests

* Updated CHANGELOG

* Fixed linting errors
2019-07-23 16:13:04 -04:00
Tim Voronov
14c487ca46
Updated pagination iterator (#338)
* Updated pagination iterator

* Added e2e test

* Fixed e2e tests
2019-07-23 12:44:30 -04:00
Tim Voronov
ddfb7a20e8 Added missed property in Document getter 2019-07-17 18:41:57 -04:00
Tim Voronov
63201148ac
Added possibility to set custom viewport size (#334)
* Added possibility to set custom viewport size

* Fixed linting issue

* Renamed ScreenSize to Viewport

* Updated e2e test
2019-07-17 13:29:16 -04:00
Tim Voronov
a5cbdb435c
Bugfix/#332 nav deadlock (#333)
* Added failing e2e test

* Fixed deadlock on navigation

* Removed filter for e2e tests

* Updated method name in LazyValue struct

* Custom atomic value

* Fixed linting issue

* Updated comments
2019-07-16 10:34:13 -04:00
Tim Voronov
347bae2e45
Feature/#265 dom manipulations (#329)
* Added SetInnerHTML method

* Added E2E tests

* Refactored GetInnerText* methods

* Updated e2e tests

* Moved related E2E tests to folders

* Added error message

* Added E2E tests

* Added E2E for static driver
2019-07-11 17:16:34 -04:00
Tim Voronov
7ce6797e9c
Feature/#230 xpath (#322)
* Implemented XPath for CDP driver

* Added XPATH function

* Added e2e tests for CDP

* Fixed linting issues

* Added support of XPath to HTTP driver

* Fixed linting issues
2019-07-03 14:05:02 -04:00
Tim Voronov
2cfd1040a9
Added missed UA setting (#318)
* Added misset UA setting

* Update doc_ua.fql

* Delete ferret_embedding_basic.go
2019-06-25 12:51:51 -04:00
Tim Voronov
d7b923e4c3
Feature/#220 iframe support (#315)
* Refactored Virtual DOM structure
* Added new E2E tests
* Updated E2E Test Runner
2019-06-19 17:58:56 -04:00
Tim Voronov
71c246dd17
Feature/#236 cookies (#242)
* Added KeepCookies option to CDP driver

* Added LoadDocumentParams

* Added COOKIE_GET and COOKIE_SET methods
2019-03-15 19:59:05 -04:00
Tim Voronov
e17ce5a3d5
Feature/#250 wait style 2 (#260)
* Added WAIT_STYLE and WAIT_NO_STYLE

* Added WAIT_NO_STYLE and WAIT_NO_STYLE_ALL functions
2019-03-14 22:10:15 -04:00
Tim Voronov
82f7317ebe
Feature/#250 wait style (#257)
* Added WAIT_ATTR functions
2019-03-13 22:50:29 -04:00
Tim Voronov
376ad77404
Feature/#250 wait style (#255)
* Added support for parsed styles

* Added stdlib function.

* Added e2e tests

* Added e2e tests for STYLE_* functions
2019-03-13 14:51:30 -04:00
Tim Voronov
d0caef8be7
Feature/#229 wait no element (#249)
* Added possibility to wait for an element or a class absence
2019-03-06 21:52:41 -05:00