[pypy-svn] r32890 - in pypy/dist/pypy/translator/js: . jssrc modules test
fijal at codespeak.net
fijal at codespeak.net
Wed Oct 4 21:07:28 CEST 2006
Author: fijal
Date: Wed Oct 4 21:07:27 2006
New Revision: 32890
Added:
pypy/dist/pypy/translator/js/test/test_main.py (contents, props changed)
Modified:
pypy/dist/pypy/translator/js/commproxy.py
pypy/dist/pypy/translator/js/jssrc/misc.js
pypy/dist/pypy/translator/js/main.py
pypy/dist/pypy/translator/js/modules/_dom.py
Log:
Added test for bug with living bookkeeper. Added some missing commits (missing StringBuilder methods, improper DOM types).
Modified: pypy/dist/pypy/translator/js/commproxy.py
==============================================================================
--- pypy/dist/pypy/translator/js/commproxy.py (original)
+++ pypy/dist/pypy/translator/js/commproxy.py Wed Oct 4 21:07:27 2006
@@ -53,8 +53,9 @@
//x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
x.onreadystatechange = function () { %(real_callback)s(x, callback) };
//x.setRequestHeader("Connection", "close");
+ //logDebug(str);
x.send(str);
- x.send(null);
+ //x.send(null);
}
"""
Modified: pypy/dist/pypy/translator/js/jssrc/misc.js
==============================================================================
--- pypy/dist/pypy/translator/js/jssrc/misc.js (original)
+++ pypy/dist/pypy/translator/js/jssrc/misc.js Wed Oct 4 21:07:27 2006
@@ -128,11 +128,18 @@
this.l = [];
}
-StringBuilder.prototype.ll_append = function(s) {
+StringBuilder.prototype.ll_append_char = function(s) {
this.l.length += 1;
this.l[this.l.length - 1] = s;
}
+StringBuilder.prototype.ll_append = function(s) {
+ this.l += s;
+}
+
+StringBuilder.prototype.ll_allocate = function(t) {
+}
+
StringBuilder.prototype.ll_build = function() {
var s;
s = "";
Modified: pypy/dist/pypy/translator/js/main.py
==============================================================================
--- pypy/dist/pypy/translator/js/main.py (original)
+++ pypy/dist/pypy/translator/js/main.py Wed Oct 4 21:07:27 2006
@@ -18,6 +18,7 @@
view = False
output = 'output.js'
debug_transform = False
+ use_pdb = True
class FunctionNotFound(Exception):
pass
Modified: pypy/dist/pypy/translator/js/modules/_dom.py
==============================================================================
--- pypy/dist/pypy/translator/js/modules/_dom.py (original)
+++ pypy/dist/pypy/translator/js/modules/_dom.py Wed Oct 4 21:07:27 2006
@@ -190,7 +190,7 @@
'namespaceURI' : "aa",
'nextSibling' : Element(),
'nodeName' : "aa",
- 'nodeType' : "aa",
+ 'nodeType' : 1,
'nodeValue' : "aa",
'offsetHeight' : 12,
'offsetLeft' : 12,
Added: pypy/dist/pypy/translator/js/test/test_main.py
==============================================================================
--- (empty file)
+++ pypy/dist/pypy/translator/js/test/test_main.py Wed Oct 4 21:07:27 2006
@@ -0,0 +1,26 @@
+
+""" tests of rpython2javascript function
+"""
+
+from pypy.translator.js.main import rpython2javascript
+from pypy.translator.js import conftest
+from pypy.rpython.ootypesystem.bltregistry import BasicExternal, described
+import py
+import sys
+
+#if not conftest.option.browser:
+# py.test.skip("Works only in browser (right now?)")
+
+class A(BasicExternal):
+ def method(a={'a':'a'}):
+ pass
+ method = described(retval={'a':'a'})(method)
+
+a = A()
+
+def fun(x='3'):
+ return a.method({'a':x})['a']
+
+def test_bookkeeper_cleanup():
+ rpython2javascript(sys.modules[__name__], ["fun"])
+ rpython2javascript(sys.modules[__name__], ["fun"])
More information about the Pypy-commit
mailing list