Exemplo n.º 1
0
    def test_compare_solve_step(self):
        "Test that solve gives same results as single step"
        self.setUp()

        Solver = BasicBidomainSolver
        solver = Solver(self.mesh,
                        self.time,
                        self.M_i,
                        self.M_e,
                        I_s=self.stimulus,
                        I_a=self.applied_current)

        (v_, vs) = solver.solution_fields()

        # Solve
        interval = (self.t0, self.t0 + self.dt)
        solutions = solver.solve(interval, self.dt)
        for (interval, fields) in solutions:
            (v_, vur) = fields
            a = vur.vector().norm("l2")

        # Reset v_
        v_.vector()[:] = 0.0

        # Step
        solver.step(interval)
        b = vs.vector().norm("l2")

        # Check that result from solve and step match.
        assert_equal(a, b)
Exemplo n.º 2
0
    def test_compare_solve_step(self) -> None:
        "Test that solve gives same results as single step"
        self.setUp()

        ps = BasicBidomainSolver.default_parameters()
        ps["Chi"] = 1.0
        ps["Cm"] = 1.0

        solver = BasicBidomainSolver(self.mesh,
                                     self.time,
                                     self.M_i,
                                     self.M_e,
                                     I_s=self.stimulus,
                                     I_a=self.applied_current,
                                     parameters=ps)

        v_, vs = solver.solution_fields()

        # Solve
        interval = (self.t0, self.t0 + self.dt)
        for _, (v_, vur) in solver.solve(*interval, self.dt):
            a = vur.vector().norm("l2")

        # Reset v_
        v_.vector()[:] = 0.0

        # Step
        solver.step(*interval)
        b = vs.vector().norm("l2")

        # Check that result from solve and step match.
        assert_equal(a, b)
Exemplo n.º 3
0
    def test_compare_solve_step(self) -> None:
        """Test that solve gives same results as single step."""
        self.setUp()

        solver = BasicMonodomainSolver(self.mesh,
                                       self.time,
                                       self.M_i,
                                       I_s=self.stimulus)

        v_, vs = solver.solution_fields()

        # Solve
        interval = (self.t0, self.t0 + self.dt)
        for _, (v_, vur) in solver.solve(*interval, self.dt):
            a = vur.vector().norm("l2")

        # Reset v_
        v_.vector()[:] = 0.0

        # Step
        solver.step(*interval)
        b = vs.vector().norm("l2")

        # Check that result from solve and step match.
        assert_equal(a, b)
    def test_replay(self, Solver, solver_type, tol):
        "Test that replay of basic bidomain solver reports success."

        self._setup_solver(Solver, solver_type)
        self._solve()

        # Check replay
        info_green("Running replay basic (%s)" % solver_type)
        success = replay_dolfin(stop=True, tol=tol)
        assert_equal(success, True)
Exemplo n.º 5
0
def DefineDocument(doc):
    view = docapi.DocModel().DocumentView(doc, doc.ResourceContext())
    testtools.create_default_processing_context_for_view(
        view, mode=docapi.IProcessingContext.PM_DESIGNTIME)
    view.Update()

    for statement, origin, result in g_tests:
        spec = resourcesapi.ScriptSpec('js', statement, origin)
        assert_equal(view.ViewDebug().CheckSyntax(spec), result)

    spec = resourcesapi.ScriptSpec('py', 'a = 1', 'python_test')
    testtools.should_throw(lambda: view.ViewDebug().CheckSyntax(spec),
                           'RuntimeError: Not implemented')
Exemplo n.º 6
0
def test_other():
    # Other tests-- not very systematic
    assert_equal(pow(3, 3) % 8, pow(3, 3, 8))
    assert_equal(pow(3, 3) % -8, pow(3, 3, -8))
    assert_equal(pow(3, 2) % -2, pow(3, 2, -2))
    assert_equal(pow(-3, 3) % 8, pow(-3, 3, 8))
    assert_equal(pow(-3, 3) % -8, pow(-3, 3, -8))
    assert_equal(pow(5, 2) % -8, pow(5, 2, -8))

    assert_equal(pow(3, 3) % 8, pow(3, 3, 8))
    assert_equal(pow(3, 3) % -8, pow(3, 3, -8))
    assert_equal(pow(3, 2) % -2, pow(3, 2, -2))
    assert_equal(pow(-3, 3) % 8, pow(-3, 3, 8))
    assert_equal(pow(-3, 3) % -8, pow(-3, 3, -8))
    assert_equal(pow(5, 2) % -8, pow(5, 2, -8))

    for i in range(-10, 11):
        for j in range(0, 6):
            if j == 1:
                # FIXME: num-bigint bug for this case
                # https://github.com/rust-num/num-bigint/pull/113
                continue
            if i < 0:
                # FIXME: num-bigint bug for negative base
                # https://github.com/rust-num/num-bigint/pull/114
                continue
            for k in range(-7, 11):
                if j >= 0 and k != 0:
                    assert_equal(pow(i, j) % k, pow(i, j, k))
                if j >= 0 and k != 0:
                    assert_equal(pow(int(i), j) % k, pow(int(i), j, k))
Exemplo n.º 7
0
def powtest(type):
    if type != float:
        for i in range(-1000, 1000):
            assert_equal(pow(type(i), 0), 1)
            assert_equal(pow(type(i), 1), type(i))
            assert_equal(pow(type(0), 1), type(0))
            assert_equal(pow(type(1), 1), type(1))

        for i in range(-100, 100):
            assert_equal(pow(type(i), 3), i * i * i)

        pow2 = 1
        for i in range(0, 31):
            assert_equal(pow(2, i), pow2)
            if i != 30:
                pow2 = pow2 * 2

        for othertype in (int, ):
            for i in list(range(-10, 0)) + list(range(1, 10)):
                ii = type(i)
                for j in range(1, 11):
                    jj = -othertype(j)
                    pow(ii, jj)

    for othertype in int, float:
        for i in range(1, 100):
            zero = type(0)
            exp = -othertype(i / 10.0)
            if exp == 0:
                continue
            assert_raises(ZeroDivisionError, pow, zero, exp)

    il, ih = -20, 20
    jl, jh = -5, 5
    kl, kh = -10, 10
    asseq = assert_equal
    if type == float:
        il = 1
        asseq = assert_almost_equal
    elif type == int:
        jl = 0
    elif type == int:
        jl, jh = 0, 15
    for i in range(il, ih + 1):
        for j in range(jl, jh + 1):
            for k in range(kl, kh + 1):
                if j == 1 and k % 2 == 0:
                    # FIXME: num-bigint bug for this case
                    # https://github.com/rust-num/num-bigint/pull/113
                    continue
                if i < 0 or k < 0:
                    # FIXME: num-bigint bug for negative base or mod
                    # https://github.com/rust-num/num-bigint/pull/114
                    continue
                if k != 0:
                    if type == float or j < 0:
                        assert_raises(TypeError, pow, type(i), j, k)
                        continue
                    asseq(pow(type(i), j, k), pow(type(i), j) % type(k))
Exemplo n.º 8
0
def test_other():
    # Other tests-- not very systematic
    assert_equal(pow(3, 3) % 8, pow(3, 3, 8))
    assert_equal(pow(3, 3) % -8, pow(3, 3, -8))
    assert_equal(pow(3, 2) % -2, pow(3, 2, -2))
    assert_equal(pow(-3, 3) % 8, pow(-3, 3, 8))
    assert_equal(pow(-3, 3) % -8, pow(-3, 3, -8))
    assert_equal(pow(5, 2) % -8, pow(5, 2, -8))

    assert_equal(pow(3, 3) % 8, pow(3, 3, 8))
    assert_equal(pow(3, 3) % -8, pow(3, 3, -8))
    assert_equal(pow(3, 2) % -2, pow(3, 2, -2))
    assert_equal(pow(-3, 3) % 8, pow(-3, 3, 8))
    assert_equal(pow(-3, 3) % -8, pow(-3, 3, -8))
    assert_equal(pow(5, 2) % -8, pow(5, 2, -8))

    for i in range(-10, 11):
        for j in range(0, 6):
            for k in range(-7, 11):
                if j >= 0 and k != 0:
                    assert_equal(pow(i, j) % k, pow(i, j, k))
                if j >= 0 and k != 0:
                    assert_equal(pow(int(i), j) % k, pow(int(i), j, k))
Exemplo n.º 9
0
def powtest(type):
    if type != float:
        for i in range(-1000, 1000):
            assert_equal(pow(type(i), 0), 1)
            assert_equal(pow(type(i), 1), type(i))
            assert_equal(pow(type(0), 1), type(0))
            assert_equal(pow(type(1), 1), type(1))

        for i in range(-100, 100):
            assert_equal(pow(type(i), 3), i * i * i)

        pow2 = 1
        for i in range(0, 31):
            assert_equal(pow(2, i), pow2)
            if i != 30:
                pow2 = pow2 * 2

        for othertype in (int, ):
            for i in list(range(-10, 0)) + list(range(1, 10)):
                ii = type(i)
                for j in range(1, 11):
                    jj = -othertype(j)
                    pow(ii, jj)

    for othertype in int, float:
        for i in range(1, 100):
            zero = type(0)
            exp = -othertype(i / 10.0)
            if exp == 0:
                continue
            assert_raises(ZeroDivisionError, pow, zero, exp)

    il, ih = -20, 20
    jl, jh = -5, 5
    kl, kh = -10, 10
    asseq = assert_equal
    if type == float:
        il = 1
        asseq = assert_almost_equal
    elif type == int:
        jl = 0
    elif type == int:
        jl, jh = 0, 15
    for i in range(il, ih + 1):
        for j in range(jl, jh + 1):
            for k in range(kl, kh + 1):
                if k != 0:
                    if type == float or j < 0:
                        assert_raises(TypeError, pow, type(i), j, k)
                        continue
                    asseq(pow(type(i), j, k), pow(type(i), j) % type(k))
Exemplo n.º 10
0
x = 1000 * b"1234"
assert uh(h(x)) == x
assert uh(b"ABCDEF") == b"\xab\xcd\xef"
assert binascii.a2b_hex(b"6161") == b"aa"

assert uh("abcd") == b"\xab\xcd"

with assert_raises(ValueError):
    uh(b"a")  # Odd-length string

with assert_raises(ValueError):
    uh(b"nn")  # Non-hexadecimal digit found

assert binascii.crc32(b"hello world") == 222957957
assert binascii.crc32(b"hello world", 555555) == 1216827162
assert binascii.crc32(b"goodbye interesting world", 777777) == 1885538403

enc_b64 = binascii.b2a_base64

assert_equal(enc_b64(b"213"), b"MjEz\n")
assert_equal(enc_b64(b"213", newline=False), b"MjEz")

dec_b64 = binascii.a2b_base64

assert_equal(dec_b64(b"UnVzdFB5dGhvbg==\n"), b"RustPython")
assert_equal(
    dec_b64(b"4pii8J+QoyAg4ZaH8J2TpPCdlYrRguKTn/CdlZDwnZWl5Y2Ez4PwnZSrICDimazwn5Gj\n"),
    "☢🐣  ᖇ𝓤𝕊тⓟ𝕐𝕥卄σ𝔫  ♬👣".encode(),
)

Exemplo n.º 11
0
class Almost:
    def fileno(self):
        return "fileno"


assert_raises(TypeError, select.select, 1, 2, 3)
assert_raises(TypeError, select.select, [Nope()], [], [])
assert_raises(TypeError, select.select, [Almost()], [], [])
assert_raises(TypeError, select.select, [], [], [], "not a number")
assert_raises(ValueError, select.select, [], [], [], -1)

if "win" in sys.platform:
    assert_raises(OSError, select.select, [0], [], [])

recvr = socket.socket()

recvr.bind(("127.0.0.1", 9988))

recvr.listen()

recvr.settimeout(10.0)

sendr = socket.socket()

sendr.connect(("127.0.0.1", 9988))
sendr.send(b"aaaa")

res = select.select([recvr], [sendr], [])

assert_equal(res, ([recvr], [sendr], []))