Exemplo n.º 1
0
def test_reconnect():
    plasm = ecto.Plasm()
    g = ecto_test.Generate(start=2, step=2)
    m = ecto_test.Multiply(factor=2)
    m2 = ecto_test.Multiply(factor=2)
    gather = ecto_test.Gather_double(n=2)
    plasm.connect(g, "out", m, "in")
    plasm.connect(g, "out", m2, "in")
    try:
        plasm.connect(m2, "out", m, "in")
        util.fail("reconnection bad...")
    except RuntimeError, e:
        pass
Exemplo n.º 2
0
def makeplasm(N):
    plasm = ecto.Plasm()
    gen = ecto_test.Generate(start=1, step=1)
    thrower = ecto_test.ThrowAfter(N=N)
    mult = ecto_test.Multiply()

    plasm.connect(gen[:] >> thrower[:], thrower[:] >> mult[:])

    return plasm
Exemplo n.º 3
0
def test_one_to_many():
    plasm = ecto.Plasm()
    g = ecto_test.Generate(start=2, step=2)
    modules = []
    for x in range(0, 5):
        m = ecto_test.Multiply(factor=2)
        plasm.connect(g, "out", m, "in")
        modules.append(m)

    sched = ecto.schedulers.Singlethreaded(plasm)
    sched.execute(niter=1)
    for x in modules:
        #print x.outputs.out
        assert (x.outputs.out == 4)
    sched.execute(niter=1)
    for x in modules:
        #print x.outputs.out
        assert (x.outputs.out == 8)
Exemplo n.º 4
0
def test_constant():
    print "test running.."
    plasm = ecto.Plasm()
    c = ecto.Constant(value=0.50505)
    m = ecto_test.Multiply(factor=3.3335)
    passthrough = ecto_test.PassthroughAny()
    print passthrough.__doc__
    print ">>>>DOC>>>>", c.__doc__
    pr = ecto_test.Printer()

    p = ecto.Plasm()

    plasm.connect(c[:] >> m[:], m[:] >> passthrough[:],
                  passthrough[:] >> pr[:])

    plasm.execute()

    assert m.outputs.out == (0.50505 * 3.3335)
    plasm.execute()

    assert m.outputs.out == (0.50505 * 3.3335)
Exemplo n.º 5
0
#!/usr/bin/python
import ecto
import ecto_test

plasm = ecto.Plasm()

gen = ecto_test.Generate()
inc = ecto_test.Increment()
mul = ecto_test.Multiply()
add = ecto_test.Add()

plasm.connect(
    gen[:] >> inc[:],
    gen[:] >> mul[:],
    mul[:] >> add['left'],
    inc[:] >> add['right'],
)