processone / fast_tls

TLS / SSL OpenSSL-based native driver for Erlang / Elixir
https://www.ejabberd.im
Other
83 stars 37 forks source link

Test failure on Fedora Rawhide #35

Closed bowlofeggs closed 5 years ago

bowlofeggs commented 6 years ago

Greetings!

I'm working on upgrading Fedora Rawhide to fast_tls-1.0.23, and I'm seeing one of the tests fail:

$ /usr/bin/rebar eunit skip_deps=true -v                                                                                                                
==> fast_tls-1.0.23 (eunit)
INFO:  sh info:
        cwd: "/home/bowlofeggs/rpmbuild/BUILD/fast_tls-1.0.23"
        cmd: cp -R src/p1_sha.erl src/fast_tls_sup.erl src/fast_tls_app.erl src/fast_tls.erl ".eunit"
INFO:  Cover compiling /home/bowlofeggs/rpmbuild/BUILD/fast_tls-1.0.23
======================== EUnit ========================
module 'fast_tls'
  fast_tls: load_nif_test...[0.004 s] ok
  fast_tls: transmission_test...*failed*
in function fast_tls:'-transmission_test/0-fun-1-'/1 (src/fast_tls.erl, line 511)
**error:{assertEqual,[{module,fast_tls},
              {line,511},
              {expression,"<< \"abcdefghi\" >>"},
              {expected,<<>>},
              {value,<<"abcdefghi">>}]}
  output:<<"">>

  fast_tls: not_compatible_protocol_options_test...[1.026 s] ok
  [done in 3.055 s]
module 'p1_sha'
  p1_sha: load_nif_test...[0.001 s] ok
  p1_sha: sha1_test...ok
  p1_sha: sha224_test...ok
  p1_sha: sha256_test...ok
  p1_sha: sha384_test...ok
  p1_sha: sha512_test...ok
  p1_sha: to_hexlist_test...ok
  [done in 0.025 s]
module 'fast_tls_app'
module 'fast_tls_sup'
=======================================================
  Failed: 1.  Skipped: 0.  Passed: 9.
Cover analysis: /home/bowlofeggs/rpmbuild/BUILD/fast_tls-1.0.23/.eunit/index.html
Coverdata export: /home/bowlofeggs/rpmbuild/BUILD/fast_tls-1.0.23/.eunit/cover.coverdata
ERROR: One or more eunit tests failed.
ERROR: eunit failed while processing /home/bowlofeggs/rpmbuild/BUILD/fast_tls-1.0.23: rebar_abort

The test code in question looks like this:

transmission_test() ->
    {LPid, Port} = setup_listener([]),
    SPid = setup_sender(Port, []),
    SPid ! {stop, self()},
    receive
    {result, Res} ->
        ?assertEqual(ok, Res)
    end,
    LPid ! {stop, self()},
    receive
    {received, Msg} ->
        ?assertEqual(Msg, <<"abcdefghi">>)
    end.

I'm not particularly familiar with Erlang, so any hints you can provide about this would be helpful. This is being built with these dependencies:

erlang-20.3.8.2 erlang-p1_utils-1.0.12-1.fc29.noarch erlang-rebar-2.6.4-6.fc28.x86_64 gcc-8.1.1-5.fc29.x86_64 openssl-1.1.1-0.pre8.fc29.x86_64

bowlofeggs commented 5 years ago

This seems to be fixed in 1.0.25. Thanks!