Wohlstand / libADLMIDI

A Software MIDI Synthesizer library with OPL3 (YMF262) emulator
GNU Lesser General Public License v3.0
174 stars 17 forks source link

2/3 Tests fail on OpenBSD #245

Closed ghost closed 3 years ago

ghost commented 3 years ago

Tested on OpenBSD-6.9-current with OpenBSD clang version 11.1.0 Let me know what more info I should provide.

Test project /usr/ports/pobj/libadlmidi-1.5.0.1/build-amd64
    Start 2: ConversionTest
1/2 Test #2: ConversionTest ...................***Failed    0.01 sec

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ConversionTest is a Catch v2.2.2 host application.
Run with -? for options

-------------------------------------------------------------------------------
[Conversion] Main
-------------------------------------------------------------------------------
/usr/ports/pobj/libadlmidi-1.5.0.1/libADLMIDI-1.5.0.1/test/conversion/conversion.cpp:66
...............................................................................

/usr/ports/pobj/libadlmidi-1.5.0.1/libADLMIDI-1.5.0.1/test/conversion/conversion.cpp:50: FAILED:
  REQUIRE( (int)a.second_voice_detune == (int)b.second_voice_detune )
with expansion:
  -19 == -20

===============================================================================
test cases:  1 |  0 passed | 1 failed
assertions: 34 | 33 passed | 1 failed

    Start 3: WoplFileTest
2/2 Test #3: WoplFileTest .....................***Failed    0.00 sec
--- Test 'fm_banks/wopl_files/Apogee-IMF-90.wopl' with version 1

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
WoplFile is a Catch v2.2.2 host application.
Run with -? for options

-------------------------------------------------------------------------------
[WOPLFile] Load, Save, Load
-------------------------------------------------------------------------------
/usr/ports/pobj/libadlmidi-1.5.0.1/libADLMIDI-1.5.0.1/test/wopl-file/wopl_file.cpp:18
...............................................................................

/usr/ports/pobj/libadlmidi-1.5.0.1/libADLMIDI-1.5.0.1/test/wopl-file/wopl_file.cpp:25: FAILED:
  REQUIRE( wopl != nullptr )
with expansion:
  nullptr != nullptr

===============================================================================
test cases: 1 | 1 failed
assertions: 1 | 1 failed

0% tests passed, 2 tests failed out of 2

Total Test time (real) =   0.02 sec

The following tests FAILED:
      2 - ConversionTest (Failed)
      3 - WoplFileTest (Failed)
Errors while running CTest
Wohlstand commented 3 years ago

Упс... Да и у меня на Linux-е тоже валится, надо бы починить... Возможно, они были давно ещё сломаны, пока я занимался переработкой базы данных банков. У меня локально провалились абсолютно те же самые тесты. :thinking:

Wohlstand commented 3 years ago

Точно, вспомнил! Суть в том, что как только я запилил поддержку тонового смещения близкого по поведению как в DMX, то там оно делится на два, следовательно, вход должен быть чётным, иначе он округлится до ближайшего чётного, чего и произошло как раз. :fox_face: А что на счёт третьего юнит-теста, там всё просто - забыл указать рабочую директорию, ибо файлы для своего теста он тянет от туда же.

Wohlstand commented 3 years ago

Починил, можно проверять! :fox_face: :+1: Закрою, когда всё подтвердится, что ок.

ghost commented 3 years ago

работает нормально для меня.