summaryrefslogtreecommitdiff
path: root/Data/Libraries/luaunit/TODO.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Data/Libraries/luaunit/TODO.txt')
-rw-r--r--Data/Libraries/luaunit/TODO.txt223
1 files changed, 223 insertions, 0 deletions
diff --git a/Data/Libraries/luaunit/TODO.txt b/Data/Libraries/luaunit/TODO.txt
new file mode 100644
index 0000000..1b29df8
--- /dev/null
+++ b/Data/Libraries/luaunit/TODO.txt
@@ -0,0 +1,223 @@
+# make all instead of make platform, this would allow to remove platform.sh
+# also avoid setnv_lua.sh if possible
+
+# ensure luarocks package are installed inside insall location
+/home/travis/build/bluebird75/luaunit/install/luarocks/share/lua/5.1/luarocks"
+/home/travis/build/bluebird75/luaunit/install/luarocks/share/lua/5.1/luarocks"
+
+
+TODO Future:
+============
+- run a full modules with a function
+- build lua with ASAN, memory sanitizer and so on on travis before running it
+- ensure that assert string functions like assertStr, strcontains, etc reject incorrect type with a correct error message
+- pretty function formatting: https://github.com/luarocks/luarocks/blob/master/src/luarocks/core/util.lua
+- platform detection:
+- document prettystr
+- validate output with ignored tests (0 failures or some failures)
+- parametrize tests
+- coloured output
+- better error messages for string differences (diffing)
+- print local variables upon assertion error:
+ + debug.get_local( ) will get the local variables in the current context
+ + debug.get_upvalue( ) will get the upvalues in the current context
+- see inspect for better table printing: https://github.com/kikito/inspect.lua
+ + print list part separate from the dict part in a table
+ + print metatables in tables
+- see StackTracePlus for printing more stack information: https://github.com/ignacio/StackTracePlus
+- how does busted deal with nested tables ? functions ?
+- look at serpent to see how to improve nested table printing
+- function should be printed as <function>
+- print table of test test_filterWithPattern and see how to improve readability
+- shuffle should shuffle separately classes and then class methods
+- add assertTableContains and assertTableNotContains to check the presence / absence of value in an array
+- look at serpent to see how to improve nested table printing
+- doc about usage of prettystr & assertion library
+- assertListContainsElements
+- assertListContainsElements
+- checkXXX for every assertXXX
+
+- review and enhance: TestLuaUnitExecution:test_withTableErrorInside
+
+
+Version 3.5 (future):
+============
+
+Planned:
+--------
+- global setup / teardown
+- class setup / teardown
+- report test duration everywhere
+- add date and duration to tap output
+- XML: report system information
+- align the "OK" vertically for text output
+- better detection of screen size
+- move all file:line description to stack trace
+- better deal with one line formatting
+- table_contains():
+ + check with finding table or nested tables
+ + add check for error messages
+- correctly compare tables with same content but different metatable
+
+Already done:
+-------------
+-
+
+Version 3.4:
+============
+TODO:
+- assertAlmostNotEquals shall support tables
+- document the release process to luarocks and update dev manual
+- add test for the runner interface of luaunit
+- update examples
+- dev guide: explain doit.py
+- dev guide: explain CI
+
+Done
+- add a list of environment variables controlling LuaUnit
+- double-check documentation generation
+- move enabling global namespace pollution explanation to a later chapter
+- update doc about TABLE_EQUALS_KEYBYCONTENT
+- update doc about test skipping
+- update documentation about how to run list of test classes
+- update documentation about setOutputType()
+- assertAlmostEquals can check lists and more complex structures
+- can choose test output type through environment variables LUAUNIT_OUTPUT
+- setOutputType() also accepts the xml filename when using the format junit
+- simplify printing of table-info in cycles
+- allow to skip tests
+- fix a bug where assertIs/assertNotIs would not deal with protected metatables
+- fix a bug in dealing with table including cycles of different structure
+- remove option TABLE_EQUALS_KEYBYCONTENT, it did not make sense
+
+
+Version 3.3:
+============
+- make sure that example source code is included in documentation when packaging
+- add annex to documentation with full source code of example
+- add annex with BSD license
+- verify that assertError functions all work with tables, review implementation in detail
+- useRe -> usePattern
+- add success() to terminate test successfully
+- doc: explain that prettystr() is used in assertions
+- check rock installation of luaunit
+- add custom message support
+- build luarocks
+- update contributors
+- update download badge
+- doc about prettystr
+- add fail() to force test failure
+- use caching on travis-ci
+- assertAlmostEqual no longer includes a default margin, margin must always be explicitly specified.
+- verify that lu.EPS by calculation
+- fix include/exclude bug (see https://github.com/bluebird75/luaunit/pull/82 )
+- doc about scientific computing dedicated functions
+- assertions for nan and inf and +/- zero
+- fixes for junit and tap output
+- doc improvements
+- better error messages for list assertions:
+ + expected length of X, got Y
+ + index differing in table 1 and 2
+- more doc about assertTrue/False/... with a table
+- randomized testing
+- can run a tests numerous times (useful for triggering the JIT effect)
+- can include and exclude tests from the test list
+
+Done since 3.1:
+===============
+x provide a luarock package. See: https://rocks.moonscript.org/modules/rjpcomputing/luaunit
+x make a difference between errors and failures
+x lua 5.3
+x travis lua 5.3
+x compatibility with LuaUnit v2.0 of rjbcomputing
+x provide a legacy wrapFunction()
+
+Done since 3.0:
+===============
+x check documentation link glitch to TAP
+x doc: report how to handle global space pollution/restriction
+x doc: adapt all examples to new way of requireing luaunit
+x less global space pollution
+x doc: move description of table printing to an annex
+x validate well-formed XML with a DTD
+x validate test output (TAP, ...) with functional tests
+x test failures, verify that output is correct
+x improve testresult: contain the list of tests, with status of each test
+x strip luaunit stack more intelligently: exclude content of luaunit
+x mention mailing-list in README.md
+x mention version in documentation
+x mention mailing-list
+x mention the new global variable config for displaying table content
+x fix display of tables with recursive references
+x improve display of nested tables in error messages
+x improve display of multiline strings in error messages
+
+x Junit XML Ouptut:
+ x test and fix xml escaping
+ x validate xml with apache and jenkins schemas
+ + xml format:
+ - add proper xml formatting header
+ - report number of failures within <testsuite> element
+ - report duration
+ - add properties describe the environment
+
+Done:
+============
+x add email to report vulnerabilities in private
+x add other types of output
+x assert with matching of the error message
+x finish user documentation
+x switch version 3.0
+x add assertMatch for strings
+x document --name
+x improve junit xml output (one file, choice of filename)
+x display number of non selected tests
+x assertIs with all types
+x mention one file distribution
+x improve TAP output: pre-calculate test numbers, display test summary as comment
+x test error messages of assertStrMatches and all error functions
+x assertNil + assertNotNil
+x readthedocs integration
+x add travis-ci badges to README
+x filter by pattern
+x support --version
+x support --help
+x replace methodInstance with real test name in reports
+x better error messages for wrong command line option, or wrong output type
+x control verbosity and output type with command line
+x display time to run all tests
+x move all assertions together
+x better error display of assertIsXXX functions
+x add assertContains for strings
+x add assertIsNumber, assertIsXXX
+x table assertions
+x sequence asserts
+x compatibilty tests with several version of lua
+x add assertNotEquals
+
+Release TODO:
+=============
+- all tests green in Travis and AppVeyor
+- doc is green in read-the-docs
+- documentation is updated with release content
+- doit.py runtests success
+- tag set on the code
+- upload release to GitHub
+- prepare luarocks and upload to luarocks
+- verify smooth installation of luarocks
+- annonce release on lua mailing-list
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+