Skip to content

Instantly share code, notes, and snippets.

@ivaravko
ivaravko / _test.rb
Created November 8, 2012 20:01 — forked from jcoglan/_test.rb
$VERBOSE = nil
require File.expand_path('../rooby', __FILE__)
Person = Rooby::Class.new 'Person' do
define :initialize do |name|
@name = name
end
define :name do
@ivaravko
ivaravko / README.md
Created August 20, 2012 14:37 — forked from pzol/README.md
capybara poltergeist test

This was a test with Poltergeist I did the other day

#!ruby
def polter
   noop

end

@ivaravko
ivaravko / bisect.py
Created August 15, 2012 15:18 — forked from davehunt/bisect.py
Script to trigger several jobs in Mozmill CI for finding a regression range
import jenkins
j = jenkins.Jenkins('http://qa-mb:8080')
branch = 'mozilla-central'
testrun = 'endurance'
builds = ['20120719030543',
'20120720030549',
'20120721030555',
@ivaravko
ivaravko / gist:3236244
Created August 2, 2012 10:59
Browser API wishlist

Browser API wishlist

Native event delegation

Browsers could do so much more to optimize delegated handlers at a lower level. Most of the CSS selector parsing and grouping optimizations could be applied here. No javascript code ever has to be invoked if the selector doesn't match.

document.addDelegatedEventListener("mouseover", ".tooltip", listener)

Possibly coming with Web Components.

require 'selenium/webdriver'
driver = Selenium::WebDriver.for :firefox
driver.get "http://jqueryui.com/demos/slider/range.html"
amount = driver.find_element(:id => "amount")
left, right = driver.find_elements(:class => "ui-slider-handle")
driver.action.click_and_hold(left).perform
until amount[:value].include? "150"
@ivaravko
ivaravko / request post node.js
Created April 29, 2012 20:08 — forked from alessioalex/request post node.js
request post node.js
var request = require('request'), default_headers, site_root = 'http://localhost:3000';;
default_headers = {
'User-Agent': 'Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language': 'en-us,en;q=0.5',
'Accept-Encoding': 'gzip, deflate',
'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
// 'Connection': 'keep-alive',
'Cache-Control': 'max-age=0'
@ivaravko
ivaravko / node-httprequest
Created April 29, 2012 19:46 — forked from bdickason/node-httprequest
Simple HTTP Request in NodeJS
getRequest: (callback) ->
options = {
host: config.host or 'yourserver'
port: config.port or 80
path: config.path or '/api/'
method: config.method or 'GET'
tmp = [] # Russ at the NYC NodeJS Meetup said array push is faster
http.request _options, (res) ->
@ivaravko
ivaravko / gist:2415869
Created April 18, 2012 19:14 — forked from cheezy/gist:2415279
Using PageObject with RSpec
# spec_helper.rb
require 'rspec'
require 'watir-webdriver'
require 'page-object'
require 'page-object/page_factory'
require 'require_all'
require_all 'lib/pages'
RSpec.configure do |config|
@ivaravko
ivaravko / abs-fatal.php
Created April 6, 2012 15:05 — forked from rgantt/abs-fatal.php
php 5.4 traits
<?php
/**
* This gives a fatal error
*/
class AbsTest {
abstract public function saySomething( $something );
public function saySomething( $something ) {
echo "{$something}\n";
}
}
$ irb -r selenium-webdriver
>> require 'net-http-spy'
=> true
>> Net::HTTP.http_logger_options = {:verbose => true}
=> {:verbose=>true}
>> driver = Selenium::WebDriver.for :firefox
opening connection to 127.0.0.1...
opened
<- "POST /hub/session HTTP/1.1\r\nAccept: application/json\r\nContent-Type: application/json; charset=utf-8\r\nContent-Length: 193\r\nUser-Agent: Ruby\r\nConnection: close\r\nHost: 127.0.0.1:7056\r\n\r\n"
<- "{\"desiredCapabilities\":{\"browserName\":\"firefox\",\"version\":\"\",\"platform\":\"ANY\",\"javascriptEnabled\":true,\"cssSelectorsEnabled\":true,\"takesScreenshot\":true,\"nativeEvents\":false,\"rotatable\":false}}"