v0.6.pre1 2011-12-01 [ENHANCEMENTS] * Construction of DesktopWatir now uses desired capabilities, and relies on shared code between OperaWatir and OperaDesktopWatir. (andreastt) [BUG FIXES] * OperaDesktopHelper missed a line making it impossible to run desktopwatir RSpec tests from `jruby -S rspec test.rb`. (andreastt) * Exposing browser.utils.* on DesktopBrowser. (andreastt) [OTHER] * Upgraded to OperaDriver v0.8.1. (andreastt) v0.5.1 2011-09-20 [OTHER] * Upgraded to OperaDriver v0.7.2. (andreastt) * Upgraded to protobuffers v2.4.1. (andreastt) v0.5 2011-09-12 [OTHER] * Pushed final version 0.5. (andreastt) v0.5.pre3 2011-09-09 [BUG FIXES] * Calling #to_s on opts, fixes `desktopwatir --help`. (andreastt) * Removing redundant -autotestmode argument sent by OperaWatir::DesktopBrowser. (andreastt) [OTHER] * Upgraded to OperaDriver v0.7.2. This will fix issues with getting location of elements in SVG documents, among other fixes. (andreastt) * Upgraded to latest head of selenium-client-nodeps. (andreatt) v0.5.pre2 2011-09-06 [NEW FEATURES] * Added browser utility service as Browser#utils, implementing the following new method calls: Utils#core_version, returning the core version Utils#os, returning the browser's OS Utils#product, returning product type (desktop/core/mobile) Utils#binary_path, returning full path to Opera binary Utils#user_agent, returning User-Agent string Utils#pid, returning the browser's PID if available (andreastt) * Implementing ability to enable verbose logging in operawatir. Added following new command-line switches to the operawatir binary: --debug=LEVEL (or -d for short), for specifying logging level --log=FILE, for specifying sending the logging to a file Available logging levels are: SEVERE (highest), WARNING, INFO, CONFIG, FINE, FINER, FINEST (lowest), ALL. Default is INFO. See `operawatir --help` for more information. (andreastt) [ENHANCEMENTS] * Now using DesiredCapabilities from OperaDriver v0.7 instead of OperaDriverSettings. (andreastt) [BUG FIXES] * initMouseEvent in Element#fire_event is now clicking clientX and clientY instead of relying on internal driver locators. (andreastt) * Compat::Window#show_frames now returns a string instead of writing to STDOUT. (andreastt) * Browser#quit was calling OperaDriver.shutdown() which is now deprecated. Fixed by now calling OperaDriver.quit() instead. (andreastt) * `operawatir --help` was broken, fixed by converting OptionParse object to a String. (andreastt) [OTHER] * Upgraded to OperaDriver v0.7.1. (andreastt) * Added tests for new Utils interface. (andreastt) v0.5.pre1 2011-08-31 [API CHANGES] * Implemented advanced user interaction API in Watir by adding a new Actions class. This is accessible through Browser#actions. (stuartk) * Removed Browser#close_all since this is no longer supported in WebDriver. The alternative approach is to get all windows, then cycle through them to close them. (andreastt) * Added following method calls related to performing context menu clicks: DesktopBrowser#action_with_condition DesktopBrowser#active_quick_window_id DesktopBrowser#close_active_menu DesktopBrowser#close_all_menus DesktopBrowser#close_menu DesktopBrowser#close_menu_with_key_press DesktopBrowser#key_press_with_condition DesktopBrowser#open_menu_with_key_press DesktopBrowser#open_menu_with_rightclick DesktopBrowser#quick_menuitems DesktopBrowser#quick_menus DesktopBrowser#quick_tabs DesktopBrowser::ConditionTimeout DesktopContainer#quick_dropdownitem DesktopContainer#quick_menu DesktopContainer#quick_menuitem QuickMenu (...) QuickMenuItem (...) (karie) * Added following utility methods: DesktopBrowser#desktop? DesktopHelper#linux? DesktopHelper#mac? DesktopCommon#linux_internal? DesktopCommon#mac_internal? DesktopCommon#wait_for_menu_closed DesktopCommon#wait_for_menu_shown DesktopCommon#wait_for_widget_visible DesktopCommon#widgets (karie) * Added QuickButton#wait_for_visible to wait for a button to become visible. (karie) * Added following APIs related to QuickDropdown's: QuickDropdown#dropped_down? QuickDropdown#open_with_click QuickDropdownItem (...) * Added QuickTab#close_window_with_doubleclick. (karie) * Added following APIs related to QuickTreeItem: QuickTreeItem#open_dialog_with_click QuickTreeItem#open_window_with_click (karie) * Added following APIs related to widgets: QuickWidget#click_with_condition QuickWidget#click_with_condition_internal QuickWidget#double_click_with_condition QuickWidget#focus_with_hover QuickWidget#middle_click_with_condition QuickWidget#open_menu_with_rightclick QuickWidget#open_window_with_click_internal QuickWidget#quick_tabs QuickWidget#quick_widgets QuickWidget#right_click_with_condition QuickWidget#verify_realtext QuickWidget::ConditionTimeout (karie) * Added following APIs related to QuickWindow: QuickWindow#active? QuickWindow#quick_widgets (karie) * Removed DesktopBrowser#open_dialog_with_click. (karie) * Removed DesktopBrowser#key_down. (karie) * Removed DesktopBrowser#key_up. (karie) * Removed Preferences::Entry (...) and Preferences::SECTIONS; replaced by Preferences::Section and Preferences::Section::Key. (andreastt) * Removed QuickButton#load_page_with_click. (karie) * Removed QuickButton#open_dialog_with_click. (karie) * Removed QuickButton#open_window_with_click. (karie) * Exposed WebElement.middleClick() from WebDriver as Element#middle_click. (andreastt) * Renamed #key_down, and #key_up in desktop_browser to avoid clash with clash with browser#key_down and up. Fixes failures of operawatir/core spec tests. New APIs: DesktopCommon#key_down_direct DesktopCommon#key_up_direct (karie) [NEW FEATURES] * Access to widgets in Desktop. (karie/adamm) * Context menus in Desktop. (karie/adamm) [BUG FIXES] * Fix for bug DSK-341584 concerning a regression in quick_treeitem where it complained about wrong number of arguments. (karie) * profile-autotest folder was not deleted in running any spec test with no arguments, fixes DSK-333674. (karie) * Add separator to #QuickMenuItem#to_s method. (adamm) * Fixes to make Mac work with menus and multiple windows. (adamm) * treeitem open window with click, fixes bug DSK-341539. (karie) [OTHER] * Added more desktop-related tests. (karie) * Added preliminary tests for keys implementation in key_spec.rb. (andreastt) * Fixes to make core tests run. (andreastt) * Fixes to make desktop tests run. (mariap) v0.4.3.pre2 2011-05-25 [BUG FIXES] * Element#click and Compat::Element#click now defaults to coordinates [1,1], fixing WTR-354. (andreastt) v0.4.3.pre1 2011-05-24 [OTHER] * Using pessimistic operator to determine rspec version between 2.6.0 and 2.7.0. rspec v2.6.0 should now be fixed for JRuby. (andreastt) v0.4.2 2011-05-20 [OTHER] * Downgrading dependency rspec to 2.5.0. rspec 2.6.0 has an timestamp format in the gem package that triggers a bug in rubygems. Since JRuby patches rubygems natively, we can't just upgrade rubygems. (andreastt) v0.4.1 2011-05-19 [ENHANCEMENTS] * Upgraded OperaDriver to v0.4.2. (andreastt) [BUG FIXES] * OPERA_ARGS detection has now been moved to OperaDriver, removing workaround from OperaWatir::Browser. (andreastt) v0.4.1.pre7 2011-05-12 [API CHANGES] * Added browser.iframe and browser.iframes to Watir 2 compatibility layer. (andreastt) [ENHANCEMENTS] * Upgraded OperaDriver to v0.4.2.pre7-7-g261741e-internal. (andreastt) [BUG FIXES] * Workaround for empty preference values sent from core in ListPrefs, skipping them as they will terminate Scope if passed back to Opera in GetPref or SetPref. (andreastt) [OTHER] * Using #first instead of #[0] when querying raw elements array. (andreastt) * Reduced some code duplication. (andreastt) v0.4.1.pre6 2011-05-09 [API CHANGES] * Added Compat::Collection#select. (andreastt) * Added Compat::Collection#selected?. (andreastt) * Added Compat::Window#frame. (andreastt) * Added Compat::Window#show_frames. (andreastt) * Added Compat::Window#switch_to_default. (andreastt) * Added DesktopBrowser#string. (karie) * Added DesktopContainer#quick_find. (karie) * Added DesktopContainer#quick_griditem. (karie) * Added DesktopContainer#quick_gridlayout. (karie) * Added Element#exist? and alias Element#exists? which will ensure that querying whether elements exists in Watir 2 compatibility mode will work. (andreastt) * New classes QuickFind, QuickGridItem and QuickGridLayout. (karie) * Added QuickTreeItem#collapse_with_click. (karie) * Added QuickTreeItem#load_window_with_double_click. (karie) * Added QuickWidget#has_ui_string?. (karie) * Added QuickWidget#height. (karie) * Added QuickWidget#width. (karie) * Added QuickWidget#x. (karie) * Added QuickWidget#y. (karie) * Added QuickWindow#height. (karie) * Added QuickWindow#width. (karie) * Added QuickWindow#x. (karie) * Added QuickWindow#y. (karie) * Removed Collection#to_s. (karie) * Removed Element#to_s. (karie) * Removed QuickWidget#is_text?. (karie) * Deprecated QuickWidgets#verify_includes_text, making #verify_text handle text substitution. Fixes DSK-329541 and DSK-330462. (karie) [NEW FEATURES] * Added --opera-idle command line option to desktopwatir binary. (karie) * Added --manual command line option to desktopwatir binary. (karie) [ENHANCEMENTS] * Upgraded OperaDriver to v0.4.2.pre7-g4db1c56-internal. (andreastt) * Enabling full backtrace (from RSpec) again. * OperaDriver.getText() has been removed, replaced by doing Window#document.getText() instead. #document calls root element using CSS selectors. Fixes WTR-338. (andreastt) * Cleaned up some code in Element by simplifying if-blocks. (andreastt) * OperaWatir Desktop specification suite has been completed. (karie, mariap) * Updated Mac launcher which now includes the emo patch. (andreastt) [BUG FIXES] * Idle is now disabled by default in OperaDriver, adding environmental check and enabling --opera-idle switch properly. (andreastt) * Added support for accessing method select_list(s) from Watir 2. (andreastt) * Releasing all parts of an array when modifiers are pressed as second argument. Fixes WTR-339. (andreastt) * QuickSearchField#search_with_index retuns text in search field, not address bar. Fixes DSK-328699. (karie) * Fix in bin/desktopwatir for calling binary with full path to Watir script. Fixes DSK-330007. (karie) * Now using RSpec's :file_or_directories_to_run option instead of :files_to_run, which has been deprecated. (andreastt) * #text= is called by compatibility code, but didn't have a check for whether element was an INPUT @type="checkbox". we are now toggling check instead of attempting to send keys. (andreastt) * Helper executes RSpec autorun programmatically, disabling this by moving it to the end of the file if any of the above abort statements in bin/operawatir is called. (andreastt) * Attempted to do #uncheck! on textareas or input elements, fixed by calling WebDriver's clear() method instead. Fixes WTR-331. (andreastt) * Removed workaround for option --opera-idle. This has now properly been implemented in OperaDriver, and we are as such doing the right thing now. (andreastt) * QuickWidgets#toggle_with_click failed if clicking removed the element clicked. Fixes DSK-330329. (karie) * Now handling ampersands in strings got from string_ids. Fixes DSK-319071. (karie) * Construction of buttons by position is now possible. (karie) * Add type checking to retrieval algorithm for widgets. Fixes DSK-320616. (karie) * Never raise UnknownObjectException on lookup, user must be able to execute methods like Collection#exist? on empty collection according to Watir specification. (andreastt) * #full_backtrace= is broken in RSpec, but andreastt has patched it in upstream. Added temporary workaround for it in bin/operawatir. * Element#value no longer does check for INPUT, TEXTAREA or SELECT fields in Watir, but leaves this to OperaDriver. (andreastt) [OTHER] * Added documentation for the Preferences implementation. (andreastt) * Added documentation for more desktop code. (karie) * Added #visual_hash tests for SVG documents. (andreastt) * Upgraded select_list_spec.rb to latest HEAD from jarib:watirspec. (andreastt) v0.4.1.pre5 2011-03-18 [BUG FIXES] * Upgraded to OperaDriver v0.4.2.pre5-15-gf8e8949 containing an updated 64-bit launcher that will work on older versions of libc. (andreastt) v0.4.1.pre4 2011-03-17 [NEW FEATURES] * Imlemented temporary environmental variable for switching OperaIdle on and off for SPARTAN. This will override the --opera-idle option. Set the OPERA_IDLE environmental variable to a truthy variable (true, "true", 1, "1") to enable. (andreastt) [BUG FIXES] * Temporarily passing OPERA_ARGS environmental variable to OperaDriver to enable fullscreen testing on SPARTAN. OPERA_ARGS will in the future be detected in OperaDriver. (andreastt) * /lib/operawatir/helper.rb will now autorun RSpec, fixing the all-tests-failing issue on SPARTAN. (andreastt) v0.4.1.pre3 2011-03-14 [API CHANGES] * window.element (and browser.element if you're running in compatibility mode) now works. Fixes backwards compatibility for SPARTAN tests. Related to WTR-260. (andreastt) * :selector has now been added as a basic type in Watir 2 compatibility mode (e.g. element(:selector, 'foo')). This is aliased to :css. Added method Compat::Collection#find_elements_by_selector as alias to Collection#find_by_css. (andreastt) * Element#get_hash is now alias to Element#visual_hash for backwards compatiblity with WTR-260. (andreastt) * Window#get_hash is now aliased to Window#visual_hash for backwards compatibility with WTR-260. (andreastt) * Compat::Browser#quit is no longer needed, removed method. We no longer use Browser#quit! which it was an alias for. (andreastt) * Window#screenshot now returns a Screenshot interface or the absolute path to the file depending on whether an argument is given. This provides backwards compatibility, but also allows you to access the newly added methods Screenshot#save, …#blank?, …#png and …#md5. (andreastt) * Removed timeout argument to Window#visual_hash. We now default to 50 milliseconds. (andreastt) * Added Window#document which returns the body/document of a page. (andreastt) [NEW FEATURES] * New command-line option --tag (or -t for short) for specifying to run only tagged tests. Adding ~ (tilde) before the tag (e.g. ~slow) will exclude given tests. * New command-line option --backtrace (or -b for short) for enabling full backtraces from RSpec. As a result, --binary has lost its shortcut -b. (andreastt) * Implemented a new screenshot API that exposes ScreenShotReply from OperaDriver. (andreastt) [ENHANCEMENTS] * Upgraded to OperaDriver v0.4.2.pre5. (andreastt) * Added specifications tests for Desktop part of OperaWatir. (karie, mariap) * OperaWatir specification tests for Desktop are now using RSpec matchers. Makes it easier to expect windows to be closed, opened, &c. (karie) * --no-opera-idle has been renamed to --opera-idle. OperaIdle is now by default switched off due to instability. (andreastt) * Synced operawatir and desktopwatir binaries. (andreastt) * Updated /spec/watir2/element_spec.rb to HEAD from watirspec. (andreastt) [BUG FIXES] * desktopwatir is no longer writing to STDERR, but to STDOUT. (andreastt) * Window#get_hash and Element#get_hash methods are now marked as deprecated. * Resolved failing to activate address field will use the current control without any errors. Fixes DSK-320799. (karie) * Widgets should return widgets listing from active Document Window. Fixes DSK-330102. (karie) * Renamed paramter in DesktopBrowser#widgets since it's not necessarily the window name the user will be looking for. (karie) * Added more load actions to be handled by load_window_with_action. Fixes DSK-320817. (karie) * Failing to activate address field will use the current control without any errors. Focus moved from edit_field to its subclass before call to enter text. Fixes DSK-320799. (karie) * Defaulting to active window when Document Window is specified, fixed to only default when active window is actually a Document Window. Related to DSK-320786. (karie) * Documentation fixes in Desktop code. (karie) [OTHER] * Updated /README.me with the latest version requirements. (andreastt) * Added /CHANGES (this). (andreastt) v0.4.1.pre2 2011-03-08 [BUG FIXES] * Stringifying text before splitting it in Element#text=. Thanks to Hallvord R. M. Steen. (andreastt) * Depending on RSpec v2.4 or above, not v2.5 or less as we did previously. This resolves upgrading OperaWatir if you already have an ancient version of RSpec installed (like we did on SPARTAN). (andreastt) v0.4.1.pre1 2011-03-04 [API CHANGES] * Moved deprecated keyboard interaction methods (Window#key, Window#key_down, Window#key_up, Window#type) from Window to Browser. If you're running operawatir in Watir 2 compatibility mode (which is enabled by default), this won't change anything for you. (andreastt) * Added a new preferences API which is accessible from browser.preferences. Removed Browser#set_preference, Browser#get_default_preference and Browser#get_preference. (andreastt) * Removed Browser#pid. (wilhelmja) * Removed Browser#goto. It's still available in Browser::Compat#goto, which is included by default. (andreastt) * Added DesktopBrowser#get_preference, DesktopBrowser#set_preference and DesktopBrowser#get_default_preference. (karie) * Removed Browser#exists? and Browser#connected?. (andreastt) [NEW FEATURES] * Support for disabling OperaIdle with --no-opera-idle. (andreastt) * Added option to wait for connection from Opera. operawatir binary now accepts --manual (or -m for short). This will allow you to go to opera:debug and hit connect manually. (andreastt) [ENHANCEMENTS] * Updated OperaDriver to v0.4.2.pre2. (andreastt) * Added tests for deprecated method Window#eval_js. (wilhelmja) * Added deprecation notice to Element#compare_hash. (andreastt) * Added specification tests for Window#screenshot, Element#triple_click, Element#compare_hash. (wilhelmja) * Added more specification tests for Window#quadruple_click. (andreastt) * DesktopBrowser is now using guessOperaPath from OperaDriver. (karie) [BUG FIXES] * Fixed passing wrong variable (param instead of args) in Browser#opera_action. This fixes browser.opera_action('foo'). (wilhelmja) * Browser#ua_string now returns the navigator.userAgent value from JavaScript. (wilhelmja) * Browser#platform now returns the navigator.platform value from JavaScript. (wilhelmja) * Compat::Element#text now supports getting texteditable values from input, textarea and select elements. (andreastt) * Requiring stringio as JRuby apparently doesn't by default, fixes problem with RSpec formatters. (andreastt) * Colours are now enabled by default, even on Windows. Installing the gem `ansicolor' fixes colour problems on Windows. (andreastt) * --output now writes to a file, was broken when upgrading to RSpec v2.5. (andreastt) * --format was not working, fixed. (andreastt) * Now requiring RSpec v2.5, not v2.5.1. rspec-core is v2.5.1, but the main gem, rspec, is only 2.5. (andreastt) * operawatir-launched tests now write to STDOUT instead of STDERR. (andreastt) * Check that Browser#desktop? actually returns true or false. (wilhelmja) * Check that Window#visual_hash and Element#visual_hash returns a hash in the correct format 8an md5sum preceded by 0x. (wilhelmja) * Added tests for Window#visual_hash and Browser#desktop?. (wilhelmja) * Misc. test name fixes. (wilhelmja) * Removing Ruby platform dependency. (andreastt) * We need to exit forcibly (I think because of RSpec) when we come to the end of the test suite. (andreastt) * Fixed compat problem and changed autostart fix to use empty Opera path instead of separate setting. (karie) * Super goto (in DesktopBrowser) disappeared, so don't use it. [OTHER] * Updated /README.md with the latest version requirements. (andreastt) * Updated documentation in /README.md. Also added a new section listing the operawatir binary's option list. (andreastt) * Set up framework for OperaWatir-specific specification tests. (andreastt) * Renamed /spec/legacy_watirspec to /spec/watir2. (andreastt) * Renamed /spec/new_watirspec to /spec/watir3. (andreastt)