def main(args):
    print(test_afn_delta_hat())
    print(test_afn_delta())
    print(test_afn_aceita())
    print(test_afn_eclose())

    ##############Testes Automato 01##################
    #Função delta_hat testada(A1,'q0',t1)
    print(tc.delta_hat(A1, 'q0', t1))

    #Função delta testada
    # Recebendo simbolo 1
    proxSimbolo1 = tc.delta(A1, 'q0', 1)
    print(proxSimbolo1)

    # Recebendo simbolo 1 novamente
    proxSimbolo2 = tc.delta(A1, proxSimbolo1, 1)
    print(proxSimbolo2)

    #Função aceita testada(A1,t1)
    aceita = tc.aceita(A1, t1)
    print(aceita)

    #Funcao eclose testada(Automato,Estados)
    eclose = tc.eclose(A1, {'q0', 'q1', 'q2', 'q3'})
    print(eclose)

    ##############Testes Automato 02##################
    #Função delta_hat testada(A2,'q0',t2)
    print(tc.delta_hat(A2, 'q0', t2))

    #Função delta testada
    # Recebendo simbolo 1
    proxSimbolo1_automato2 = tc.delta(A2, 'q0', 1)
    print(proxSimbolo1_automato2)

    # Recebendo simbolo 1 novamente
    proxSimbolo2_automato2 = tc.delta(A2, proxSimbolo1_automato2, 1)
    print(proxSimbolo2_automato2)

    #Função aceita testada(A1,t1)
    aceita_automato2 = tc.aceita(A2, t2)
    print(aceita_automato2)

    #Funcao eclose testada(Automato,Estados)
    eclose_automato2 = tc.eclose(A2, {'q0', 'q1', 'q2'})
    print(eclose_automato2)

    return
def test_afn_aceita():
    assert afn.aceita(exp_aceitacao.automato, [0]) == False
    assert afn.aceita(exp_aceitacao.automato, [1]) == False
    assert afn.aceita(exp_aceitacao.automato, [1, 0]) == False
    assert afn.aceita(exp_aceitacao.automato, [0, 1, 0]) == False
    assert afn.aceita(exp_aceitacao.automato, [0, 1]) == True
    assert afn.aceita(exp_aceitacao.automato, [1, 0, 1]) == True
    assert afn.aceita(exp_aceitacao.automato, [1, 1, 0, 1]) == True
    assert afn.aceita(exp_aceitacao.automato, [0, 1, 0, 1]) == True
def test_afn_aceita():
    #testeAutomato01
    assert tc.aceita(A1, t1) == 'true'
    #testeAutomato02
    assert tc.aceita(A2, t2) == 'true'