Re: Revision 417 -- tests are broke
- Posted by CChris <christian.cuvier at agricul?ure.gouv.?r> May 08, 2008
- 609 views
Jeremy Cowgar wrote: > > CChris wrote: > > > > Running the unit tests means the interpreter should choose the right include > > files, and it must be the the right interpreter as well. EUING and EUDIR > > normally > > You have to test functions before committing though! How do you know if they > work? For instance, some things added were missing a ending paren. Please do > not commit without testing. The repo has been broke for some time now. Other > people working on functions for standard library (me right now, but in the > future > others as well) cannot really proceed because unit testing is broke, etc... > > We must do our best to keep the repo in a working order. There will always be > times when we commit something that doesn't work on accident or that has a > serious > flaw we did not detect, but it should not be because we didn't test what we've > changed. > > > Is anything like configuration files that override the environment working? > > No, but the way I do it is pretty easy (I think). I have: > > C:\EUPHORIA > C:\EUPHORIA31 -or- C:\EUPHORIA40 > > I then have two batch files: > > eu40.bat > eu31.bat > > eu40.bat simply: > > 1. renames C:\EUPHORIA to C:\EUPHORIA31 > 2. renames C:\EUPHORIA40 to C:\EUPHORIA > > eu31.bat simply: > > 1. renames C:\EUPHORIA to C:\EUPHORIA40 > 2. renames C:\EUPHORIA31 to C:\EUPHORIA > > I then keep: > > SET EUDIR=C:\EUPHORIA > SET PATH=C:\EUPHORIA\BIN;%PATH% > > > btw, which routines don't return as expected? > > Well, that's hard to say because I only get a few bad returns before Euphoria > crashes. > > regex.e: > failed: search_replace() #1. expected: "the ABC ran ABC" but got: { > 116't', > 104'h', > 101'e', > 32' ', > "ABC", > 32' ', > 114'r', > 97'a', > 110'n', > 32' ', > "ABC" > } > failed: search_replace_user() #1. expected: "the dog ran up" but got: { > 116't', > 104'h', > 101'e', > 32' ', > "dog", > 32' ', > 114'r', > 97'a', > 110'n', > 32' ', > "up" > } > sequence.e: > failed: split_adv() single sequence delimiter. expected: { > "while 1 ", > " end while ", > "" > } but got: { > "while 1 ", > "", > " en", > " while ", > "", > "" > } > > Then I get: > > /opt/euphoria/include/sequence.e:103 in function remove() > type_check failure, start is 1.5 > > ... called from ./t_sequence.e:56 > > --> See ex.err > > > Can you please fix these mistakes and then run the unit tests to make sure > they > are working again and commit the fixes? To run the unit tests takes about 3 > seconds and to run them, you: > > C:\ > cd C:\EUPHORIA\TESTS > C:\EUPHORIA\TESTS > exwc all.ex > > -- > Jeremy Cowgar > <a href="http://jeremy.cowgar.com">http://jeremy.cowgar.com</a> The issue with split_adv() had occurred while I was testing, but I no longer get it. Adding ?split_adv("while 1 do end while do","do",0,0)?1/0 to sequence.e and running it (under 3.1), I get the expected result as shown in t_sequence.e. Guess I'll have to do the rename trick to keep going, including for compiling 4.0 (intoptions, get_switches and three other unknown refs at link time). CChris Running