Skip to content

Instantly share code, notes, and snippets.

View cburgmer's full-sized avatar

Christoph Burgmer cburgmer

View GitHub Profile
(function (root, factory) {
if (typeof define === 'function' && define.amd) {
define(['ayepromise'], factory);
} else if (typeof exports === 'object') {
module.exports = factory(require('ayepromise'));
} else {
root.ayepromise = factory(root.ayepromise);
}
}(this, function (ayepromise) {
'use strict';
@cburgmer
cburgmer / gist:87f520a66f083a9deed8
Created January 12, 2015 21:12
CSS Critic reporter to find offending pixels
csscritic.addReporter({
reportComparison: function (comparison) {
if (imagediff.equal(comparison.pageImage, comparison.referenceImage)) {
return;
}
var d = imagediff.diff(comparison.pageImage, comparison.referenceImage, {align: 'top'}).data;
var pixelDiff = [], i;
for (i=0; i < d.length; i += 4) {
if (d[i] !== 0 || d[i+1] !== 0 || d[i+2] !== 0 || d[i+3] !== 255) {
pixelDiff.push([d[i], d[i+1], d[i+2], d[i+3]]);
@cburgmer
cburgmer / join_junit_xml.sh
Last active August 29, 2015 14:23
How to join JUnit XML files when all you have is basic Unix commands
# For test cases wrapped with <testsuites>. For a single <testsuite> adapt accordingly.
find . -name "*.xml" -exec cat {} \; \
| sed "/<\?xml [^>]*\?>/d" | sed "/<\/*testsuites>/d" \
| (echo '<?xml version="1.0" encoding="UTF-8"?>' && echo '<testsuites>' && cat && echo '</testsuites>') \
> joined_xml
mv joined_xml joined.xml # Avoid the output being mixed up with the input
@cburgmer
cburgmer / gist:862398
Created March 9, 2011 15:32
Extracting a file with Solr & Tika for indexing using Python
import json
import os
import urllib2
from poster.encode import multipart_encode
from poster.streaminghttp import register_openers
# Register poster to urllib2
register_openers()
@cburgmer
cburgmer / example.py
Created June 1, 2011 17:59
Using proper timezone information with SuRF
from datetime import datetime
# Get the UTC tzinfo object, alternatively use the solution from http://docs.python.org/library/datetime.html#tzinfo-objects
from pytz import utc
my_article = Article()
# Save timestamp "now" as UTC
my_article.dc_created = datetime.now(utc)
my_article.save()
@cburgmer
cburgmer / gist:1121011
Created August 2, 2011 19:39
Here is a quick snippet how to test if overflow is happening in a DOM element, shamelessly taken from http://www.bramstein.com/projects/text-overflow/.
// Check if overflow happens for a given jquery element
function check_overflow(element) {
var element_clone = element.clone();
element.after(element_clone.hide().css({
'position': 'absolute',
'width': 'auto',
'overflow': 'visible',
'max-width': 'inherit'
}));
@cburgmer
cburgmer / Area.java
Created October 4, 2011 17:36
OOPExercise3
public class Area extends Measurement {
public Area(int value) {
super(value);
}
}
@cburgmer
cburgmer / SpecRunner.html
Created April 3, 2012 19:37
Using Gradle & ANT to get JUnit XML results (e.g. from Jasmine) in HTML
<!DOCTYPE html>
<html>
<head>
<title>Jasmine Spec Runner</title>
<link rel="stylesheet" type="text/css" href="../lib/jasmine-1.1.0/jasmine.css">
<script type="text/javascript" src="../lib/jasmine-1.1.0/jasmine.js"></script>
<script type="text/javascript" src="../lib/jasmine.junit_reporter.js"></script>
</head>
<script type="text/javascript">
jasmine.getEnv().addReporter(new jasmine.JUnitXmlReporter('../../build/reports/jasmine/', false)); // don't consolidate so that JUnitReport can pick up the XML
@cburgmer
cburgmer / wiki2text.py
Created April 18, 2012 21:07
Mediawiki markup to text converter that operates on dumps
import sys
import logging
from lxml import etree
# Install from https://github.com/erikrose/pijnu & https://github.com/erikrose/mediawiki-parser
from pijnu.library.error import IncompleteParse
from preprocessor import make_parser as make_preprocessor_parser
from text import make_parser
@cburgmer
cburgmer / example.html
Created June 20, 2012 21:37
Minimal example for rasterizeHTML.js
<!DOCTYPE html>
<html>
<head>
<title>rasterizeHTML.js example</title>
<script type="text/javascript" src="lib/htmlparser.js"></script> <!-- Needed for Chrome & Safari to work around buggy XMLSerializer -->
<script type="text/javascript" src="lib/cssParser.js"></script> <!-- Needed to embed backgroundImages -->
<script type="text/javascript" src="lib/URI.js"></script> <!-- Needed to calculate paths when embedding stuff -->
<script type="text/javascript" src="rasterizeHTML.js"></script>
</head>
<body>