← Back to team overview

openerp-expert-framework team mailing list archive

why Tiny cannot make an OERPScenario clone, so please just use it!

 

Hello folks,

I strongly suggest you look that presentation by a fellow Pythonista
that happened to open his mind to Ruby:
he clearly explains why Python clones of RSpec or Cucumber cannot come close
due to Python LANGUAGE LIMITATIONS (especially after 7'50):
http://blog.extracheese.org/2010/02/python-vs-ruby-a-battle-to-the-death.html

Now, he first makes a few critics to Ruby that I hope will give him
credibility to you Pythonistas (even if I think myself some of those first
statements are wrong: to me map[non_existing_key] raising an exception in
Python is just one of those unexpected singular cases that break rules where
they don't in Ruby and I think Python has just more of them; as for
optional parenthesis, they are also what makes RSpec/Cucmber and other DSL
so powerful in Ruby...)

So, I desperately call you to give OERPScenario (Cucumber) a shot because no
matter the efforts you are willing to waste, you will not come close, as
explained in this presentation. So, I rather suggest you picks up that
incredible tool CampToCamp made and use it and rather use your remaining
time refactoring the core of OpenERP for less bugs, rather than trying to
make a clone that will fail to be as powerful. Note that in OERPScenario,
you will only use Cucumber, meaning that even if you would consider valid
the critics against Ruby, they just wouldn't apply as you don't have to
write Ruby code yourself past using the Cucumber/OERPScenario.

Now, yes, I welcome you to implement YAML as an option for feeding OpenERP
with fixtures/meta parametrization rather than XML (look at HAML
http://haml-lang.com/ if you don't know how to do it for views, everybody I
know that tried it sticked to it and never went back to writing HTML XML by
hand), but this can be added in a backward compatible way, meaning after 5.2
while lot's of refactoring/bugfix cannot be backward compatible and I
suggest you take car of that first for the 5.2 freeze. I also recall you
that for the test prospective Cucumber/OERPScenario supports YAML out of the
box already...

NB1: notice that what C2C made with OERPScenario on the top of OOOR would
perfectly works with RSpec too for unit testing and low level TDD.
NB2: our TerminatOOOR OOOR based Kettle ETL plugin for OpenERP works like a
charm using laster code/instructions here:
http://github.com/rvalyi/terminatooor I'm just afraid we have no time to
document it further for now.

Thanks

Raphaël Valyi
http://www.akretion.com

Follow ups