У меня проблема решить в Jython. Функция у меня выглядит следующим образом:преобразование источника Jython/ast
ok = whatever1(x, ...)
self.assertTrue("whatever1 failed: "+x...(), ok)
ok = whatever2(x, ...)
self.assertTrue("whatever2 failed: "+x...(), ok)
[ many many lines ] ...
Есть много тестов, которые выглядят так, что они содержат в основном нормально = ... тесты, но есть и другие вещи, сделанные тоже. Я знаю, какие функции проверяемы, потому что они исходят только из одного пространства имен (или я могу оставить часть «ok =»). Вопрос заключается в том, как автоматически преобразовать источник, так что я пишу только:
ok = whatever1(x, ...) # this is transformed
ok = whatever2(x, ...) # this too
something_else(...) # this one isn't
а остальное генерируется автоматически?
Я знаю о незрелом и ast - есть ли лучший способ подойти к этой проблеме? (да, я знаю - может быть, как монада) Я тоже смотрю на библиотеку rope
и не могу решить ... какой путь лучше выбрать здесь? Преобразование, которое я описал, является единственным, что мне нужно, и я не возражаю против создания временного файла, который будет включен в настоящий код.
Правда - это хорошая идея ... хотя может возникнуть еще более интересный синтаксис, поэтому я буду ждать больше ответов. – viraptor