Skip to content

Conversation

jerith666
Copy link
Contributor

@jerith666 jerith666 commented Feb 9, 2019

do non-recursive tests before the depth check. this ensures that the
'for(key in x)' loop properly short-circuits, and avoids putting
Tuple2s containing 'undefined' on the stack.

fixes #1011

see that issue for further discussion, and the parent commit for test
code.

these are no longer required by the new version of elm-test
* Date is no longer part of elm/core; remove tests for it

* need to import Debug.toString to test it now

* 0.19 limited tuple size, so reduce test to match

* use new modBy and remainderBy functions

* 0.19 removed flip, curry, and uncurry; so, remove tests for those

* updates for elm-test:
  * remove a duplicate test
  * use Expect.within with floats
* expose Array module contents w/o prefix rather than Maybe

* use modBy instead of (%)

* remove test for Array.toString, removed in 0.19
* shadowing is no longer allowed by the compiler; remove test for it
* elm-test now requires tests to have unique names
* update import syntax

* use String.fromInt, modBy, and Tuple.pair rather than toString, (%), and (,)

* inline our own version of flip, as it was removed in 0.19

* remove test for scanl, which was removed in 0.19
* use modBy rather than (%)

* String.toInt now returns a Maybe rather than a Result, so implement
  our own local version of the old behaviour, so the andThen tests can
  continue to build upon it.
* String.toInt and String.toFloat now return Maybe

* String.toInt no longer parses hex literals in 0.19
elm/core is special because the compiler always inserts an implicit
dependency on it.  therefore it's impossible to have the tests
integrated in the elm/core project in the normal way -- if we try to
symlink out from $ELM_HOME to our project's source in the way that was
done for 0.18, the compiler gets into a deadlock.  other approaches
cause it to find two copies of all the code in elm/core and refuse to
proceed.

instead, this approach creates a logically independent project, with
no real code, only tests.
do non-recursive tests before the depth check.  this ensures that the
'for(key in x)' loop properly short-circuits, and avoids putting
Tuple2s containing 'undefined' on the stack.

fixes elm#1011

see that issue for further discussion, and the parent commit for test
code.
@jerith666 jerith666 force-pushed the nesting-threshold-fix branch from 263d140 to 6eff09b Compare February 9, 2019 18:13
@jerith666
Copy link
Contributor Author

CI failure is being discussed in #1017.

harrysarson and others added 2 commits February 10, 2019 10:14
This removes `src` as a source directory in the tests directory
as it does not exist.
Additionally, it uses a global elm-test by default in `run-tests.sh`
and uses travis elm support.

Refs: https://docs.travis-ci.com/user/languages/elm
Refs: elm#1017
@jerith666
Copy link
Contributor Author

closing in favor of #1062

@evancz evancz closed this Dec 5, 2019
jerith666 added a commit to jerith666/elbum that referenced this pull request Jan 19, 2020
... which includes the fix for elm/core#1018,
so we don't need to patch it ourselves anymore
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

comparing lists with lengths just above and below 100 produces TypeError: y is undefined in Utils.eqHelp

3 participants