Skip to content

Instantly share code, notes, and snippets.

View jsdevel's full-sized avatar

Joe Spencer jsdevel

View GitHub Profile
@jsdevel
jsdevel / JSStateWithBitFlags.js
Created September 20, 2013 18:07
bit masking fun with javascript.
/**
* A map of bit masks that correlate to a person's status.
* @type {Object}
*/
var personStatus=(function(){
var i=0.5;
return {
CODING:(i*=2),
EATING:(i*=2),
READING:(i*=2),
name="global";
var a = {
name:"a",
prop:Func,
b:{
name:"b",
prop:Func
}
};
@jsdevel
jsdevel / gist:99a5d736fbdd6c86d455
Last active August 29, 2015 14:01
WebDriverWait example with webdriver-sync
var byLocator = By.cssSelector('.some.selector');
var timeout = 5;//seconds
var element = (new WebDriverWait(driver, timeout))
.until(ExpectedConditions.visibilityOfElementLocated(byLocator));
console.log(element.getText());
@jsdevel
jsdevel / mithro-chrome-setup-for-travis.bash
Last active August 29, 2015 14:01
@mitrho's travis setup script for Chrome.
#! /bin/bash
set -x
set -e
# Make sure /dev/shm has correct permissions.
ls -l /dev/shm
sudo chmod 1777 /dev/shm
ls -l /dev/shm
@jsdevel
jsdevel / javascript-array-impl.js
Last active August 29, 2015 14:03
An attempt at creating an array in javascript without using Array.
var equal = require('assert').equal;
var instance = this;
var lengthFacade = 0;
this.push = function(value){
this[getLength()] = value;
};
Object.defineProperty(this, 'length', {
#!/bin/bash
host="`hostname`"
if [ -z "`grep -o "$host" /etc/hosts`" ];then
sed -i "s|\(127.0.0.1.*\)$|\1 $host|" /etc/hosts
fi
@jsdevel
jsdevel / gist:03f28b38ed0c06860cfc
Last active August 29, 2015 14:06
angular sign in form getting cleared
function SignInCtrl(
$rootScope,
$scope,
credentials,
events,
handleUser,
User
){
$scope.isLoading = false;
$scope.generalError = '';
@jsdevel
jsdevel / java-8-selenium-mixin.java
Last active August 29, 2015 14:19
Java 8 Selemium Widget Mixin
public interface SearchWidget<T extends Page>
extends HasPage<T>, HasDriver {
String SEARCH_WIDGET_BUTTON_SELECTOR = "#searchWidgetButton";
default T clickSearchWidgetButton() {
getDriver()
.findElement(By.id(SEARCH_WIDGET_BUTTON_SELECTOR))
.click();
return getPage();
@jsdevel
jsdevel / java-i-selenium-pageobject-with-mixin.java
Last active August 29, 2015 14:19
java-8-selenium-pageobject-with-mixins
public class HomePage extends Page<HomePage>
implements SearchWidget {
// package private contructor
HomePage () {}
// Home Page specific methods
public HomePage doSomethingOnTheHomePage() {
// do something
return this;
@jsdevel
jsdevel / page-class.java
Last active August 29, 2015 14:19
page-class
public abstract class Page<T extends Page>
implements HasDriver, HasPage<T> {
protected WebDriver driver;
private String endpoint;
protected String getPagePath();
@Override
public WebDriver getDriver() {