Making Annotations a required dependency
Fixing dependencies
Another composer fix
Another composer fix
Not possible to depend on package in forked repository
Adding autoloader to Composer
1. normalizing file spacing (2 empty lines after "namespace" statement, 1 empty line after "use" statement)
2. replacing PageFactory::getElement (used $elements array) with PageFactory::initElements (using class variables with @find-by annotation)
3. adding IWebElement interface and WebElementProxy class for web element lazy loading
4. rearranging "use" statements to look nicer
5. fixing docblocks to be multiline in all cases (would then be used in bytecode caching)
6. renaming "WrapsElement.php" to "IWrapsElement.php", because of interface (not class) inside
7. adding "open" method to "Page" class, that would open url, associated with that page without need to specify it directly
8. factory creation is made through singleton allowing once factory instance be shared across multiple Mink sessions
9. url of the page can be optionally set using @page-url('/relative/url/to/the/page') annotation in Page class descendant class without need to override class constructor
10. all, but How::LINK_TEXT and How::PARTIAL_LINK_TEXT element location ways from Selenium are now supported by WebElement
Adding example usage code
1. reformatting composer.json
2. adding dependency on "php-annotations" package without hopes, that local repository override will work
Moving out Selenium Driver specific code to separate method
1. HtmlElement enhanced to support nested elements (not tested yet), like Page supports already
2. Add some missing DocBlocks, some DocBlocks updated with more details about method/class
3. Added missing methods for CheckBox, Radio, Select (needs testing)
4. Adding missing Typified elements for Form and TextBlock
5. Implemented lazy-loading (via proxy object) for WebElement/TypifiedElement/HtmlElement
6. Added IPageFactory::initElements methods, that in turn decides whatever it should init a Page or HtmlElement class
7. Added ISearchContext interface (like in Java version of Selenium) and needed classes now implements it as well
8. Selenium-style selector processing code moved away from WebElement into new SeleniumSelector class, which is automatically added to selectors, that Mink can use.
1. added more examples
2. added proxy/interface for HtmlElement class
3. code, related to Typified element processing was moved away from Page/PageFactory classes
4. now using annotation manager build-in caching
5. factory singleton fixed to support descendant singleton factories
6. proxy methods (which were 1 line long) were inlined into proxyField method
7. page/htmlelement properties of scalar types are now ignored
8. PageFactory code rewritten to be ReflectionProperty oriented instead of being Annotations oriented
9. properties inherited from other classes are now ignored (maybe it's bad if we'll extend one page/htmlelement from another later on)
Adding page screenshot, used in examples.
1. adding example image to example pages
2. resizing example image to speed up page loading
1. added example "composer.json" to use (since all libraries are not yet on Packagist this becomes non-trivial task to checkout a library)
2. started to work on Named interface
3. HtmlElement is now also a TypifiedElement, which allows infinite levels of @find-by annotations within it
4. Form made a subclass of HtmlElement
5. composer.json updated to use fixed versions of Mink/Selenium driver
6. old HtmlElement related code removed, since now it's handled as a special way of TypifiedElement
7. initFactory method now queries for session himself
8. added FindBys annotation, but not yet being processed
9. added support for nested selector usage in HtmlElement class descendant class properties
10. added ability to specify url parameters in Page::open method (base url still goes from @page-url annotation)
11. when required @find-by annotation is missing, then an exception is thrown
Merge pull request #1 from aik099/master

Here is almost finished version