Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Invalid memory access caused by Spectator, should it be removed? #29

Open
wout opened this issue Sep 17, 2023 · 4 comments
Open

Invalid memory access caused by Spectator, should it be removed? #29

wout opened this issue Sep 17, 2023 · 4 comments

Comments

@wout
Copy link
Contributor

wout commented Sep 17, 2023

I'm preparing a PR on this shard to fix a few hanging issues, but I'm running into the following error after running crystal spec:

Invalid memory access (signal 11) at address 0x0
[0x55c25cc05796] *Exception::CallStack::print_backtrace:Nil +118 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cbe3556] ~procProc(Int32, Pointer(LibC::SiginfoT), Pointer(Void), Nil) +310 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x7f358d842520] ?? +139867984241952 in /lib/x86_64-linux-gnu/libc.so.6
[0x55c25cc20f2d] *String#==<String>:Bool +45 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25ce3ccfc] *Spectator::Matchers::EqualityMatcher(String) +76 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25ce3cb8d] *Spectator::Matchers::EqualityMatcher(String) +45 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25ceb2e3d] *Spectator::Expectation::Target(String | Nil) +45 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25ceb2e07] *Spectator::Expectation::Target(String | Nil) +39 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25ce2448b] *SpectatorTestContext::Group__temp_552::Group__temp_596::Group__temp_600#__temp_605:Nil +219 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cbefb9c] ~procProc(Spectator::Example, Nil) +44 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cdc54c5] *Spectator::Example#run_internal:Nil +613 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cbe7429] ~procProc(Nil) +9 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cdd3a31] *Spectator::Example::Procsy#call:Nil +49 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cdc4bff] *Spectator::Example#run:Spectator::Result+ +2591 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cdcf138] *Spectator::Runner#run_example<Spectator::Example>:Spectator::Result+ +72 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cdcf037] *Spectator::Runner#run_examples:Nil +87 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cdced05] *Spectator::Runner#run:Bool +149 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cdcb20a] *Spectator::Spec#run:Bool +298 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cd7ef1b] *Spectator +75 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cbe3cf6] ~procProc(Int32, (Exception | Nil), Nil) +38 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25ccdbdb9] *Crystal::AtExitHandlers::run<Int32, (Exception+ | Nil)>:Int32 +153 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cebd813] *Crystal::exit<Int32, (Exception+ | Nil)>:Int32 +35 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cebd789] *Crystal::main<Int32, Pointer(Pointer(UInt8))>:Int32 +105 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x55c25cbd7a36] main +6 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x7f358d829d90] ?? +139867984141712 in /lib/x86_64-linux-gnu/libc.so.6
[0x7f358d829e40] __libc_start_main +128 in /lib/x86_64-linux-gnu/libc.so.6
[0x55c25cbbff75] _start +37 in /home/wout/.cache/crystal/crystal-run-spec.tmp
[0x0] ???

I've already removed the cache, but that doesn't help. Since the Spectator shard also causes other issues (#14), I wonder if it should be removed for maintainability. Other than the RSpec-like feeling Spectator brings, are there any benefits over Crystal's native testing framework? I wouldn't mind doing it.

@igor-alexandrov
Copy link
Member

@wout thanks for this Issue. Seems like removing Spectator is a correct way to go...

@wout
Copy link
Contributor Author

wout commented Sep 18, 2023

@wout thanks for this Issue. Seems like removing Spectator is a correct way to go...

Great, I'll work on that.

@igor-alexandrov
Copy link
Member

Thanks a lot! I can help if anything needed.

@wout
Copy link
Contributor Author

wout commented Sep 18, 2023

Great! I may have some questions here and there, I'll let you know.

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

No branches or pull requests

2 participants