[ https://issues.apache.org/jira/browse/LUCENENET-435?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Christopher Currens updated LUCENENET-435: ------------------------------------------ Affects Version/s: Lucene.Net 3.0.3 Fix Version/s: (was: Lucene.Net 3.0.3) Lucene.Net 3.5 Moving to 3.5. A lot of tests have changed in Java, between 3.0.3 and 4.0, so I'm not sure the value on working on this until we've caught up with that. > Fix the test suite for Lucene.Net Core > -------------------------------------- > > Key: LUCENENET-435 > URL: https://issues.apache.org/jira/browse/LUCENENET-435 > Project: Lucene.Net > Issue Type: Task > Components: Lucene.Net Test > Affects Versions: Lucene.Net 2.9.4g, Lucene.Net 3.0.3 > Environment: all > Reporter: michael herndon > Assignee: michael herndon > Labels: refactoring, stability, testing, > Fix For: Lucene.Net 3.5 > > Original Estimate: 336h > Remaining Estimate: 336h > > If wish to work on one of these, create a new sub-task from this one, assign > it to yourself and submit the patch or commit it. make sure that if you > create any new files to include the apache 2.0 license. > * There needs to be a running list of things to do/not to do with testing. I > don't know if this goes in a jira or do we keep a running list on the wiki or > site for people to pick up and help with. > * Tests need to run on mono and not Fail (there is a good deal of failing > tests on mono, mostly due to the temp directory have the C:\ in the path). > * Assert.Throw<ExceptionType>() needs to be used instead of Try/Catch > Assert.Fail. ** > * File & Path combines to the temp directory need helper methods, > * e,g, having this in a hundred places is bad new > System.IO.FileInfo(System.IO.Path.Combine(Support.AppSettings.Get("tempDir", > ""), "testIndex")); > * We should still be testing deprecated methods, but we need to use #pragma > warning disable/enable 0618 for testing those. otherwise compiler warnings > are too numerous to be anywhere near helpful. > * We should only be using deprecated methods in places where they are being > explicitly tested, other tests that need that functionality in order to > validate those tests should be re factored to use methods that are not > deprecated. > * Identify code that could be abstracted into test utility classes. > * Infrastructure Validation tests need to be made, anything that seems like > infrastructure. e.g. does the temp directory exist, does the folders that > the tests use inside the temp directory exist, can we read/write to those > folders. (if a ton of tests fail due to the file system, we should be able to > point out that it was due to permissions or missing folders, files, etc). > * Identify what classes need an interface, abstract class or inherited in > order to create testing mocks. (once those classes are created, they should > be documented in the wiki). > * fix rethrows inside try/catches that log information then rethrows the > exception. i.e. use throw; instead of throw ex; > Note Assert.Throws needs to replace stuff like the following. We should also > be checking the messages for exceptions and make sure they make sense and can > help users fix isses if the exceptions are aimed at the library users. > try > { > d = DateTools.StringToDate("97"); // no date > Assert.Fail(); > } > catch (System.FormatException e) > { > /* expected exception */ -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira