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

125 Commits

Author SHA1 Message Date
Tim Voronov
df390a629a
Merge pull request #380 from MontFerret/refactoring/html-element
Removed redundant element value caching
2019-09-07 14:36:16 -04:00
Tim Voronov
012029f8d9 Updated comments 2019-09-07 14:03:17 -04: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
24370d8178
Refactored methods (#376)
* Refactored methods

* Fixed errors provided by go vet
2019-09-06 23:15:27 -04:00
Tim Voronov
c773509469
Added missed errors to HTMLElement interface (#375)
* Added missed errors to HTMLElement interface

* Fixed test suit
2019-09-06 21:02:41 -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
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
11bf8c365a
Fixed headers (#348)
* Fixed headers

* Added e2e for static pages
2019-08-04 17:25:47 -04:00
Tim Voronov
b323a984cc
Added errors to ClickX methods and added existence check (#341)
* Added errors to ClickX methods and added existence check

* Fixes

* Return None from Iterator when an error occurs
2019-07-26 13:22:06 -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
22382a0f61
Added namespace builder (#336)
* Added namespace builder

* Fixed linting issues

* Added extra check

* Updated e2e lib

* Renamed NamespaceBuilder to NamespaceContainer and changed func receivers

* Renamed NewLib to RegisterLib
2019-07-22 17:21:20 -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
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
84d662c2fc
Fixed improper math operator used in calculating page load timeout (#319) 2019-06-25 15:33:42 -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
6933798419
Bugfix/#295 arithmetic operators (#298)
* Some work

* Updated Add operator

* Updated Subtract operator

* Updated Subtract operator tests

* Added tests for multiplication

* Added division

* Updated the rest of operators
2019-05-19 12:12:11 -04:00
3timeslazy
acf2f13dcb Linter Cleanups (#294)
* sync with MontFerret/ferret

* fix --param handling

When params is converted to map it uses strings.Split,
which slices a string into all substrings separated by :.

* remove impossible conditions nil != nil

* delete ineffectual assignments

* replace '+= 1' with '++'

* remove useless comparison with nil

* merge variable declarations

* remove bool comparison

* fix imports

* fix imports

* delete unused file

* use copy instead of loop

* delete unused DummyInterface

* remove unnecassary break statements

* tidy modules
2019-05-03 17:10:34 -04:00
3timeslazy
de703513e4 Linter Cleanup (#276)
* linter cleanup

* fix default case
2019-03-29 10:48:51 -04:00
Tim Voronov
37fb385ba4
Updated RAND function (#271)
* Updated RAND function

* renamed a func
2019-03-19 16:17:05 -04:00
3timeslazy
1cf260cd59 fix order of arguments (#269) 2019-03-19 12:32:28 -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
Tim Voronov
63dfcdeefd
Fixed dot notation for HTML elements (#239)
* Fixed dot notation for HTML elements
2019-02-25 21:46:39 -05:00
Tim Voronov
eb523f01cc
Feature/#221 mouse events (#237)
* Initial work

* Added MoveMouseByXY and ScrollByXY

* Fixed liniting issues
2019-02-23 17:52:01 -05:00
Tim Voronov
6e15846d0f
Added Context to HTML methods (#235)
* Added Context to HTML methods

* Fixed unit tests

* Updated timeout

* Fixed WAIT_CLASS timeout
2019-02-20 21:24:05 -05:00
Tim Voronov
34c8c02258
Refactoring/externalized html (#234)
* Externalized HTML drivers

* Fixed unit tests

* Updated logging

* Added support to set default driver

* Updated GetIn and SetIn helpers
2019-02-19 18:10:18 -05:00
Tim Voronov
f8e061cc80
Move value specific Iterable and Iterator interfaces into core module (#233)
* Move value specific Iterable and Iterator interfaces into core module

* Update Makefile

Reverted test command

* Update collection.go

* Fixed wrong iterator usage

* Updated use of switch statements
2019-02-15 07:41:08 -05:00
Tim Voronov
1af8b37a0f
New type system (#232)
* New type system

* Fixed dot notation for HTML elements
2019-02-13 12:31:18 -05:00
3timeslazy
24512715e5 rename KEEP -> KEEP_KEYS (#223) 2019-02-01 21:39:28 -05:00
Tim Voronov
5620be211c
Next (#214)
* Renamed DOCUMENT to PAGE

* Added PageLoadParams

* Added PageLoadParams

* Renamed LoadPageParams -> PageLoadParams

* Added support for context.Done() (#201)

* Bug/#189 operators precedence (#202)

* Fixed math operators precedence

* Fixed logical operators precedence

* Fixed array operator

* Added support for parentheses to enforce a different operator evaluation order

* Feature/#200 drivers (#209)

* Added new interfaces

* Renamed dynamic to cdp driver

* Renamed drivers

* Added ELEMENT_EXISTS function (#210)

* Renamed back PAGE to DOCUMENT (#211)

* Added Getter and Setter interfaces
2018-12-21 23:14:41 -05:00
Paul
6bc4b3e0e3 Prevent memory leak (#213) 2018-12-19 16:12:37 -05:00
Tim Voronov
a5dec54a3c
Fixed WAIT_CLASS args validation (#192) 2018-11-22 10:39:15 -05:00
Tim Voronov
47a4a18375 Fixed int oveflow for page load timeout 2018-11-21 23:11:01 -05:00
Tim Voronov
1af1cc2486
Fixes (#187) 2018-11-21 22:45:00 -05:00
Tim Voronov
d94a2fb004
Added timeout to DOCUMENT function (#186) 2018-11-21 20:38:27 -05:00
3timeslazy
023040866d added DateCompare function (#182)
* add pkg/stdlib/objects Length function

* rename lenght.go -> length.go

* fix tests according to other tests

* add new tests to length tests

* delete objects method Length

* add objects method Has

* add objects function Keys

* small fixes in Keys and Has functions

* change Has function

* unit tests for Keys function

* add unit tests for merge. also little change in lib.go

* add doc to Keys function

* Merge function prototype

* add unit tests for KEEP function

* added KEEP function

* added doc for KEYS function

* update lib.go

* update lib.go

* upd merge prototype

* addded isEqualObjects function to objects tests

* change object method Compare

* added unit tests for Compare method

* changed Compare method

* fix Compare method

* rename method Clone to Copy

* added Cloneable interface

* added Value to Cloneable interface

* implemented Cloneable intefrace by array

* added some more unit tests for values.Array

* fix values.Array.Compare method

* added one more unit test

* implemented Cloneable interface by Object

* unit tests for Object.Clone

* move core.IsCloneable to value.go

* change Clone function

* move IsClonable to package values

* updated MERGE unit tests

* added MERGE function

* added MERGE to lib

* added one more test

* changed MERGE function

* rewrite a few comments according to Go Best Practices

* rewrite comments

* fix bug when result of the KEEP function was dependent on source object

* some more changes in KEEP function

* init VALUES function

* push test with bug

* add stress test

* small changes in stress tests

* changes in object.Comapare

* change object.Compare

* add more tests for object.Compare

* added comments to object.Compare function

* change object.Comapare

* delete useless comment

* one more change in object.Compare

* init datetime

* added test for datetime

* added lib.go

* add helpers functions

* made values.DefaultTimeLayout public

* added DATE function

* added DATE_DAYOFWEEK function

* added DATE_YEAR function

* added DATE_MONTH function

* added one more testCase for DATE_MONTH

* added DATE_DAY function

* added DateDay to lib

* added DATE_HOUR, DATE_MINUTE and DATE_SECOND functions

* added DATE_DAYOFYEAR, DATE_LEAPYEAR, DATE_MILLISECOND functions

* fix names in tests

* one more case into dayofyear_test

* added DATE_QUARTER function

* added DATE_DAYS_IN_MONTH function

* added DATE_FORMAT function

* added -v flag into go test

* update DATE_FORMAT test cases

* added one more test case

* add helpers functions

* made values.DefaultTimeLayout public

* added DATE function

* added DATE_DAYOFWEEK function

* added DATE_YEAR function

* added DATE_MONTH function

* added one more testCase for DATE_MONTH

* added DATE_DAY function

* added DateDay to lib

* added DATE_HOUR, DATE_MINUTE and DATE_SECOND functions

* added DATE_DAYOFYEAR, DATE_LEAPYEAR, DATE_MILLISECOND functions

* fix names in tests

* one more case into dayofyear_test

* added DATE_QUARTER function

* added DATE_DAYS_IN_MONTH function

* added DATE_FORMAT function

* added -v flag into go test

* Set codecov support for all branches

* update DATE_FORMAT test cases

* Updated codecov settings

* Added panic recovery mechanism (#158)

* Bump github.com/mafredri/cdp from 0.19.0 to 0.20.0 (#159)

Bumps [github.com/mafredri/cdp](https://github.com/mafredri/cdp) from 0.19.0 to 0.20.0.
- [Release notes](https://github.com/mafredri/cdp/releases)
- [Commits](https://github.com/mafredri/cdp/compare/v0.19.0...v0.20.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>

* Bump github.com/gofrs/uuid from 3.1.1 to 3.1.2 (#160)

Bumps [github.com/gofrs/uuid](https://github.com/gofrs/uuid) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/gofrs/uuid/releases)
- [Commits](https://github.com/gofrs/uuid/compare/v3.1.1...v3.1.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>

* added one more test case

* sorter instead Compare now

* rename utils.LOG -> utils.PRINT

* rename utils.Logs -> utils.Print

* added DATE_ADD, DATE_SUBTRACT functions

* use keyed fields now

* added DATE_DIFF function

* delete unused var

* delete useless type cast

* fixed a bug when adding/subtrating did not take an amount of units

* added DateCompare function

* renames

* fix small bug

* fix
2018-11-19 19:49:34 -05:00
3timeslazy
1866cb1e31 fixed a bug when adding/subtrating did not take an amount of units (#181) 2018-11-18 11:00:52 -05:00
Tim Voronov
c6a4ede15d
Feature/#177 hover (#178) 2018-11-15 14:33:53 -05:00
3timeslazy
b4a8c8ba3c Feature/#8 date diff (#175) 2018-11-13 16:58:40 -05:00
Tim Voronov
9131c676d9
#172 Added SCROLL_TOP and SCROLL_BOTTOM (#174) 2018-11-12 22:26:02 -05:00
Tim Voronov
291d07cbef
Feature/custom iterator (#173)
* Added CollectionIterator interface

* Added PAGINATION function

* Fixed LIMIT clause

* Fixed linting issues
2018-11-12 19:58:12 -05:00