Editing Short projects

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 14: Line 14:
== Implement missing Matlab functions ==
== Implement missing Matlab functions ==


* Use the [https://savannah.gnu.org/patch/?func=additem&group=octave Savannah patch tracker] for submissions unrelated to an existing bug.
Use the [https://savannah.gnu.org/patch/?func=additem&group=octave Savannah patch tracker] for submissions unrelated to an existing bug.
 
== Test Octave functions for proper input handling ==
 
* Many functions either do insufficient input checking or the input requirements have changed over time.
* Contributors can try to break Octave function behavior with different types of input, and document the results.
* Users can check <em>expected behavior</em> according to the Octave help and, if applicable, expected compatible behavior according to [https://www.mathworks.com/help/matlab/ public facing Matlab documentation].
* Inputs to test can be:
** different numeric types - double, single, integer.
** non-numeric types - logical, string, cell, struct
** different input shapes - scalar, row/column vectors, 2D, 3D, & nD arrays, zero size arrays ([], 1x0, and 1x3x0 are all empty but may require different handling).
** char/string parameters: different case handling, partial matching behavior, invalid/nonsense parameters.
* For the input items above, does function behave acceptably? Are numerical or graphical outputs as expected? Is output consistent? Is any error message intelligible/meaningful to the user? 
* Optionally the behavior above can be tested against Matlab function output if it is available. If needed but not available, tests can be submitted to other developers for output checking.
** Note 1: There is much undocumented Matlab behavior.  Because this has the possibility of changing with little notice, fixing incompatibilities related to such undocumented behavior is considered on a case-by-case basis by the developer team. Documentation of such cases is always beneficial, however.
** Note 2: Only Matlab public documentation and function output may be compared.  <em>Internal Matlab code, even if available, should never even be looked at by a contributor. Contributions will be discarded if it is determined such action occurred.</em>
* Contributors can submit bug reports to the [https://savannah.gnu.org/bugs/?group=octave Octave Bug Tracker] documenting their findings.
* An example can be see in bug {{bug|64078}} comment #10 of looking through the /plot/draw functions for how they handle integer and logical inputs to numeric fields.
 


== Write Built-In Self Tests (BISTs) ==
== Write Built-In Self Tests (BISTs) ==
Please note that all contributions to Octave may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Octave:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)

Templates used on this page: