Skip to content

Experimental SkewBinomialHeap Tests failing #115

@jackfoxy

Description

@jackfoxy

Description

tests marked ptestPropertyWithConfig as well as most commented-out SkewBinomialHeap Tests fail

Repro steps

  1. change ptestPropertyWithConfig to testPropertyWithConfig (remove "p")

  2. run tests

Expected behavior

pass
See commit 2918045 for tests passing as NUnit tests before conversion to Expecto and F# was at 4.0.
Since then projects have been updated first to F#.Core 4.1 and now 4.5.
Also previous passing tests were on older version of FsCheck.

Actual behavior

System.Exception: The type System.IComparable is not handled automatically by FsCheck. Consider using another type or writing and registering a generator for it.
   at FsCheck.ReflectArbitrary.reflectObj@124-10.Invoke(String message)
   at FsCheck.ReflectArbitrary.reflectGenObj@129.Invoke(Type t)
   at FsCheck.Common.f@1[a,b](IDictionary`2 memo, FSharpFunc`2 f, a n, Unit _arg1)
   at FsCheck.Common.memoizeWith[a,b](IDictionary`2 memo, FSharpFunc`2 f, a n)
   at FsCheck.Arb.Derive@1146.get_Generator()
   at FSharpx.Collections.Experimental.Tests.SkewBinomialHeapTest.emptyOnly@139-1.Invoke(Boolean _arg1)
   at FsCheck.GenBuilder.Bind@88.Invoke(Int32 n, StdGen r0)
   at FsCheck.GenBuilder.Bind@88.Invoke(Int32 n, StdGen r0)
   at FsCheck.Runner.test@96-1.GenerateNext(IEnumerable`1& next)
   at Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.MoveNextImpl()
   at FsCheck.Common.loop@53-1.GenerateNext(IEnumerable`1& next)
   at Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.MoveNextImpl()
   at FsCheck.Common.takeWhilePlusLast@61.GenerateNext(IEnumerable`1& next)
   at Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.MoveNextImpl()
   at Microsoft.FSharp.Collections.SeqModule.Fold[T,TState](FSharpFunc`2 folder, TState state, IEnumerable`1 source)
   at FsCheck.Runner.runner[a](Config config, a prop)
   at FsCheck.Runner.check[a](Config config, a p)
   at Expecto.ExpectoFsCheckModule.test@90.Invoke(FsCheckConfig config)
   at Expecto.Impl.execTestAsync@887-1.Invoke(Unit unitVar)
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2)
   at <StartupCode$FSharp-Core>.$Async.StartChild@1641-5.Invoke(AsyncActivation`1 ctxt)
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction)

Known workarounds

Rewrite existing tests to not use type System.IComparable

Related information

fscheck/FsCheck#443 may resolve this issue.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions