import py
import re
from fakebrowser.fakebrowser import fakebrowser

here = py.magic.autopath().dirpath()

def setup_module(mod):
    mod.b = b = fakebrowser(here.join('testsite'), '/index.html')
    b.initwindow()

def test_initwindow():
    assert b.window.title == b.eval('window.title') == 'test page'
    bodies = b.window.document.getElementsByTagName('body')
    assert len(bodies) == 1
    body = bodies[0]
    assert ''.join(re.split('\s', body.innerHTML)) == '<p>foo!</p>'
    ps = b.window.document.getElementsByTagName('p')
    assert len(ps) == 1
    assert ps[0].childNodes[0].nodeValue.strip() == 'foo!'

def test_load_script_tags():
    assert b.eval('foobar(1)') == 2

def test_register_event():
    assert len(b.window.events) == 0
    b.eval("document.addEventListener('click', function() {return 1;}, true)")
    assert len(b.window.events) == 1

