Skip to content

Failing iex documentation tests on Erlang/OTP 26 and Elixir 1.16.1 #13322

@queirozlc

Description

@queirozlc

Elixir and Erlang/OTP versions

Erlang/OTP 26 [erts-14.0] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit]

Elixir 1.16.1 (compiled with Erlang/OTP 26)

$ elixir --version

Erlang/OTP 26 [erts-14.0] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit]

Elixir 1.16.1 (compiled with Erlang/OTP 26)

Operating system

MacOS Sonoma 14.2.1

Current behavior

Something weird is happening when i trying to run make test_iex command. All other tests in other modules are passing but there's five Erlang docs tests failing for some reason, seems like some libraries was not compiled with docs, the output is:

$ make test_iex


 1) test h prints Erlang module function specs (IEx.HelpersTest)
     test/iex/helpers_test.exs:340
     Assertion with =~ failed
     code:  assert captured =~ "-spec sleep(Time) -> ok when Time :: timeout()."
     left:  "\n                                 :timer.sleep/1\n\n  @spec sleep(time) :: :ok when time: timeout()\n\nModule was compiled without docs. Showing only specs.\n\n"
     right: "-spec sleep(Time) -> ok when Time :: timeout()."
     stacktrace:
       test/iex/helpers_test.exs:343: (test)

..........................

  2) test h handles non-existing Erlang module function (IEx.HelpersTest)
     test/iex/helpers_test.exs:346
     Assertion with =~ failed
     code:  assert captured =~ "No documentation for :timer.baz was found"
     left:  ":timer was not compiled with docs\n"
     right: "No documentation for :timer.baz was found"
     stacktrace:
       test/iex/helpers_test.exs:348: (test)

.....

  3) test t prints all types in erlang module (IEx.HelpersTest)
     test/iex/helpers_test.exs:1011
     Assertion with =~ failed
     code:  assert captured =~ "-opaque queue(Item)"
     left:  "\tqueue\n\nThese types are documented in this module:\n\n  -type queue() :: queue(_).\n\n"
     right: "-opaque queue(Item)"
     stacktrace:
       test/iex/helpers_test.exs:1014: (test)

..............

  4) test h prints Erlang module documentation (IEx.HelpersTest)
     test/iex/helpers_test.exs:335
     Assertion with =~ failed
     code:  assert captured =~ "This module provides useful functions related to time."
     left:  ":timer was not compiled with docs\n"
     right: "This module provides useful functions related to time."
     stacktrace:
       test/iex/helpers_test.exs:337: (test)

..................................

  5) test t prints single type from erlang module (IEx.HelpersTest)
     test/iex/helpers_test.exs:1017
     Assertion with =~ failed
     code:  assert captured =~ "-type iovec() :: [binary()]"
     left:  "@type iovec() :: [binary()]\n\n"
     right: "-type iovec() :: [binary()]"
     stacktrace:
       test/iex/helpers_test.exs:1019: (test)

................................................................................................
Finished in 4.1 seconds (0.3s on load, 0.1s async, 3.6s sync)
255 tests, 5 failures

Expected behavior

I was expecting to have my tests passing since i've followed the asdf-erlang plugin guides to install Erlang/OTP compiled with documentations. (The guides available here)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions