Change the default value of testcase.overwrite to 'force'#142
Conversation
|
I think the sample itself is improperly rendered. Sample input should be in a canonical form (e.g. no 'L' suffixes for long types). |
|
I don't know why Greed renders samples's long integers with the 'L' suffix for Java and C#, and the 'LL' suffix for C++. If the suffixes are not needed, I agree with your opinion that sample input should be in a canonical form. |
|
Sorry I'm no expert in python. But I do think changing the default behaviour of testcase overwrite will not solve this. If the |
I'm afraid I don't understand what you meant. |
|
Ohhh, I see what you meant. Sorry for the misunderstanding. The point of the |
|
I see the benefit of the wookayin proposed above that "Sample input should be in a canonical form (e.g. no 'L' suffixes for long types)." |
|
Yeah, that may be a good idea, but it means that the testcase template is specially treated when rendering, and greed may be lack of methods to do that (treat some template specially), I may take some time to look at this. |
|
An example of 'LL' suffixes in the test case: TCO2012 R1A EllysFractions (the test is not working properly) |
Python raised ValueError while reading a sample input because int() cannot parse long integers with 'L' like '1L'.
Values are printed as-is in PythonLanguage#renderParamValue(). However, Java is selected first in topcoder arena. Therefore, long integers are printed with 'L' in JavaLanguage#renderParamValue(). Though I changed language to Python in arena, *.sample file was not updated.
To fix this issue, the default value of testcase.overwrite should be 'force'.