Abstract Wikipedia/Smoke tests

From Meta, a Wikimedia project coordination wiki
Jump to navigation Jump to search
For an explanation of the term "smoke test", see w:Smoke testing (software) (d:Q17143088)
  • Go to Special:ApiSandbox and run some of the examples for wikilambda_function_call
  • Go Z802/If and make a call
  • Add a label in some other language to If and save it
  • Go to Z811/First element and make a call against a list of elements
  • Create a function definition “Negate: Boolean → Boolean”
    • Create the two relevant tests
    • Connect the testers
    • Create an implementation as a composition using if
    • Create an implementation using JavaScript
    • Create an implementation using Python
    • Connect the implementations
    • Check if test results are shown for Negate
    • Use the Negate function
  • Create a  function And: Boolean, Boolean → Boolean, same as above
  • Create a function Concatenate: String, String → String, same as above (but no implementation using composition)
  • Create a string with some value and save it as an object
  • Create a type Positive integer with one key of type string (no validator)
  • Create an instance of that type and save it
  • Create a function Positive integer as String: Positive integer  → String
    • Create one test for it and connect it
    • Create an implementation using composition, using Z803/Value by key, and connect it
    • Use the function
  • Create a function Positive integer equality: Positive integer, Positive integer → Boolean
    • Create one test for it and connect it
    • Create one implementation as a composition using Z866/String equality and Positive integer to String and connect it
    • Use the function
  • Create functions Successor: Positive integer → Positive integer
    • Create one test for it and connect it
    • Create an implementation in JavaScript
    • Connect the implementation
    • Use the function
  • Create a function Floored predecessor: Positive integer → Positive integer
    • Create two tests for it (0 → 0, 1 → 0) and connect them
    • Create an implementation in JavaScript
    • Connect the implementation
    • Use the function
  • Create an error type “Underflow”
  • Create a function Predecessor: Positive integer → Positive integer
    • Create an implementation via composition: if the argument is zero, raise an underflow error, else return the floored predecessor of the argument