Files
@ 831e30606026
Branch filter:
Location: Jasinta/tests/test_jasinta.py - annotation
831e30606026
886 B
text/x-python
implemented the String object
41be60d4fd30 18037ac0f6b4 41be60d4fd30 41be60d4fd30 41be60d4fd30 41be60d4fd30 41be60d4fd30 41be60d4fd30 831e30606026 18037ac0f6b4 831e30606026 41be60d4fd30 41be60d4fd30 41be60d4fd30 41be60d4fd30 41be60d4fd30 41be60d4fd30 18037ac0f6b4 2dc5ec5e11be 2dc5ec5e11be 831e30606026 2dc5ec5e11be 2dc5ec5e11be 2dc5ec5e11be 2dc5ec5e11be 2dc5ec5e11be 2dc5ec5e11be 2dc5ec5e11be 2dc5ec5e11be 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 831e30606026 | from unittest import TestCase
from unittest.mock import patch
from pyjsparser import parse
from jasinta import interpret
class TestBasics(TestCase):
@patch("builtins.print")
def test_addition(self, mock_print):
s = """var a=3;
var b=1;
var c=a+b;
document.write(c);"""
interpret(parse(s))
mock_print.assert_called_with(4)
@patch("builtins.print")
def test_assignment(self, mock_print):
s = """var a=1;
var b=1;
a+=b;
b+=a;
document.write(b);"""
interpret(parse(s))
mock_print.assert_called_with(3)
class TestString(TestCase):
@patch("builtins.print")
def test_assignment(self, mock_print):
s = """var s = "abcdefgh";
var a = s.charAt(0);
var bcd = s.slice(1, 4);
var efg = s.substr(4, 3);
var h = String.fromCharCode(104);
document.cookie = a+bcd+efg+h;
document.write(document.cookie);"""
interpret(parse(s))
mock_print.assert_called_with("abcdefgh")
|