robotframework / RIDE

Test data editor for Robot Framework
Apache License 2.0
968 stars 382 forks source link

Syntax colorization does not detect error when keyword is defined multiple times #1076

Open yanne opened 9 years ago

yanne commented 9 years ago

Originally submitted to Google Code by @Tattoo on 22 Aug 2012

When having multiple libraries with the keyword of the same name, syntax colorization accepts short name of the keyword as valid and automatically links it to the first library it finds.

However, Robot does not allow this, but you need to define the library with the keyword.

See screenshots.

yanne commented 9 years ago

Originally submitted to Google Code by @Tattoo on 22 Aug 2012

See issue 977 for origin

yanne commented 9 years ago

Originally submitted to Google Code by @mkorpela on 24 Aug 2012

High defect ( issue 1043 ) found which means that we will do the release a bit sooner. Moving this issue to future.

yanne commented 9 years ago

Originally submitted to Google Code by @mkorpela on 7 Sep 2012

IMHO: The existence of Builtin.Set Library Search Order ( http://robotframework.googlecode.com/hg/doc/libraries/BuiltIn.html?r=2.7.4#Set%20Library%20Search%20Order ) makes this issue a very difficult one to solve.

If we think about the situations where this "Set Library Search Order" is used: They more or less are similar to overriding a method where you in development have some abstract resource / library that you are using and in real execution env. something more complex (or basically you are running the same test case against multiple different concrete implementations of a library or resource file - if you are running the same test case against different tested system versions etc.).

For these cases I would really like the current behavior to still work (you still want to see the documentation of the abstract library / resource and have all the autocompletion options etc).

That is why I vote that we WontFix this one.

What do you think?

yanne commented 9 years ago

Originally submitted to Google Code by @pekkaklarck on 6 Nov 2012

RIDE definitely should show an error when a keyword is defined multiple times. The main problem is that, as Mikko commented, Set Library Search Order keyword can be used to make this a valid situation and then error should not be shown. This makes the implementation non-trivial.

yanne commented 9 years ago

This could be implemented as a preference. By default, the warning is show, but it can be turned off if you know that Set Library Search Order is used somewhere.