Isso eu sei, só queria entender de onde saiu o " devemos evitar " Em 18/04/2014 11:25, "Leonardo Ruoso" <[email protected]> escreveu:
> Em 18 de abril de 2014 11:14, Tiago Peczenyj > <[email protected]>escreveu: > >> What? >> > > *given, when and ~~ * > > >> Em 18/04/2014 10:58, "Vinícius Miasato" <[email protected]> >> escreveu: >> >> Opa, >>> >>> given não deveria ser evitado? Aliás não precisamos de given at all, >>> certo? >>> >>> atenciosamente, >>> Vinícius Miasato >>> Em 17/04/2014 17:41, "Tiago Peczenyj" <[email protected]> >>> escreveu: >>> >>>> se o cara vai ler da stdin ( e estamos admitindo que o cara fez um pipe >>>> para o script ) ok, mas o Expect te dá apenas a opção de controlar o >>>> timeout com processo como também é bidirecional. >>>> >>>> sem saber mais detalhes fica impossivel ajudar. >>>> >>>> 2014-04-17 17:33 GMT-03:00 Daniel de Oliveira Mantovani < >>>> [email protected]>: >>>> >>>>> Oxi, você pode fazer isso sem usar expected.... >>>>> >>>>> given(<STDIN>) { >>>>> >>>>> } >>>>> >>>>> 2014-04-17 17:31 GMT-03:00 Frederico Melo <[email protected]>: >>>>> > Oi Daniel, >>>>> > >>>>> > Preciso do expect pois vou interagir com o servidor. E analiso o que >>>>> esse >>>>> > servidor escreve em uma tela para tomar a decisão do próximo passo... >>>>> > >>>>> > A estrutura que você sugeriu é legal mas, acho que só interagindo >>>>> dentro do >>>>> > perl. >>>>> > >>>>> > Obrigado, >>>>> > >>>>> > >>>>> > 2014-04-17 17:17 GMT-03:00 Daniel de Oliveira Mantovani >>>>> > <[email protected]>: >>>>> > >>>>> >> Porque você quer usar expected ? (Seja lá o que esse método que você >>>>> >> não especificou de onda venha faz). >>>>> >> >>>>> >> given ($text) { >>>>> >> obj() when /OBJETIVO/; >>>>> >> consulta() when /CONSULTA/; >>>>> >> } >>>>> >> >>>>> >> 2014-04-17 17:01 GMT-03:00 Tiago Peczenyj <[email protected] >>>>> >: >>>>> >> > nunca usei assim mas baseado neste documento: >>>>> >> > >>>>> >> > http://search.cpan.org/~rgiersig/Expect-1.15/Expect.pod >>>>> >> > >>>>> >> > vc teria que usar o exp_continue no fim de cada subrotina. >>>>> >> > >>>>> >> > >>>>> >> > 2014-04-17 16:58 GMT-03:00 Frederico Melo <[email protected]>: >>>>> >> >> >>>>> >> >> Monges! Socorro! >>>>> >> >> Sou bem limitado na programação em perl mas estou evoluindo com o >>>>> >> >> tempo. >>>>> >> >> Então desculpem pelas minhas dúvidas que para vocês, pode ser >>>>> muito >>>>> >> >> simples... >>>>> >> >> >>>>> >> >> Bom, estou utilizando expect com perl e analiso alguns outputs >>>>> de um >>>>> >> >> servidor, em forma texto, que devo analisar e, dependendo da >>>>> ocorrência >>>>> >> >> de >>>>> >> >> uma string, devo disparar uma determinada sub-rotina para >>>>> tratativas >>>>> >> >> específicas. >>>>> >> >> >>>>> >> >> Ex.: se aparecer a string CONSULTA, devo disparar a subrotina >>>>> >> >> consulta() >>>>> >> >> Se aparecer a string OBJETIVO, devo disparar a subrotina obj() e >>>>> assim >>>>> >> >> por >>>>> >> >> diante. >>>>> >> >> >>>>> >> >> O output do servidor é verificado pelo expect e, no momento que >>>>> devo >>>>> >> >> tomar >>>>> >> >> a decisão, a tela do output é apenas uma, com apenas uma das >>>>> >> >> ocorrências >>>>> >> >> abaixo. >>>>> >> >> >>>>> >> >> Para verificar isso, estruturei o código .pl assim: >>>>> >> >> >>>>> >> >> $exp->expect(2, >>>>> >> >> >>>>> >> >> [ qr/SELECIONE/ => \&select()], >>>>> >> >> >>>>> >> >> [ qr/OBJETIVO/ => \&obj()], >>>>> >> >> >>>>> >> >> [ qr/AGUARDE/ => \&sai_6()], >>>>> >> >> >>>>> >> >> [ qr/CONSULTA/ => \&consulta()], >>>>> >> >> >>>>> >> >> [ timeout => \&cancela() ], >>>>> >> >> >>>>> >> >> ); >>>>> >> >> >>>>> >> >> Ou seja, no meu entendimento limitado, quero que o expect >>>>> dispare uma >>>>> >> >> das >>>>> >> >> subs acima dependendo da string que ele encontrar no output do >>>>> >> >> servidor. >>>>> >> >> >>>>> >> >> Acredito que a estrutura acima, que parece uma matriz (desculpem >>>>> a >>>>> >> >> ignorância), vai executar TODAS as subs independente do conteúdo >>>>> do >>>>> >> >> output >>>>> >> >> do servidor. >>>>> >> >> >>>>> >> >> O que está acontecendo é que o expect ou o perl só dispara a >>>>> primeira >>>>> >> >> sub... select()... independente da string encontrada... >>>>> >> >> >>>>> >> >> Sei que a condição para encontrar as strings funcionam pois, fiz >>>>> um >>>>> >> >> perl >>>>> >> >> com expect para cada condição acima e, quando rodo >>>>> individualmente cada >>>>> >> >> .pl, >>>>> >> >> funciona certo... o que estou errando? Como devo fazer o que >>>>> preciso? >>>>> >> >> >>>>> >> >> Por favor, ajudem! >>>>> >> >> >>>>> >> >> Muito obrigado, >>>>> >> >> Atte., >>>>> >> >> Frederico >>>>> >> >> >>>>> >> >> >>>>> >> >> =begin disclaimer >>>>> >> >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>> >> >> SaoPaulo-pm mailing list: [email protected] >>>>> >> >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>> >> >> =end disclaimer >>>>> >> >> >>>>> >> > >>>>> >> > >>>>> >> > >>>>> >> > -- >>>>> >> > Tiago B. Peczenyj >>>>> >> > Linux User #405772 >>>>> >> > >>>>> >> > http://about.me/peczenyj >>>>> >> > >>>>> >> > =begin disclaimer >>>>> >> > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>> >> > SaoPaulo-pm mailing list: [email protected] >>>>> >> > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>> >> > =end disclaimer >>>>> >> > >>>>> >> >>>>> >> >>>>> >> >>>>> >> -- >>>>> >> >>>>> >> -dom >>>>> >> >>>>> >> -- >>>>> >> >>>>> >> Daniel de Oliveira Mantovani >>>>> >> Business Analytic Specialist >>>>> >> Perl Evangelist /Astrophysics hobbyist. >>>>> >> +55 11 9 8538-9897 >>>>> >> XOXO >>>>> >> =begin disclaimer >>>>> >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>> >> SaoPaulo-pm mailing list: [email protected] >>>>> >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>> >> =end disclaimer >>>>> > >>>>> > >>>>> > >>>>> > =begin disclaimer >>>>> > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>> > SaoPaulo-pm mailing list: [email protected] >>>>> > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>> > =end disclaimer >>>>> > >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> -dom >>>>> >>>>> -- >>>>> >>>>> Daniel de Oliveira Mantovani >>>>> Business Analytic Specialist >>>>> Perl Evangelist /Astrophysics hobbyist. >>>>> +55 11 9 8538-9897 >>>>> XOXO >>>>> =begin disclaimer >>>>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>> SaoPaulo-pm mailing list: [email protected] >>>>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>> =end disclaimer >>>>> >>>> >>>> >>>> >>>> -- >>>> Tiago B. Peczenyj >>>> Linux User #405772 >>>> >>>> http://about.me/peczenyj >>>> >>>> =begin disclaimer >>>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>> SaoPaulo-pm mailing list: [email protected] >>>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>> =end disclaimer >>>> >>>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >> =begin disclaimer >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >> SaoPaulo-pm mailing list: [email protected] >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >> =end disclaimer >> >> > > > -- > Leonardo Ruoso > Journalist, Perl developer and business consultant > Media, UFC/2006; Telecom, IFCE/1998 > > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > >
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
