Gabriel, yes, it's a good option + non-breaking change. Allen, it's just more convenient to copy the latest line instead of scrolling up (especially if the stacktrace is long).
On Thu, Oct 25, 2018 at 3:15 AM Allen Madsen <allen.c.mad...@gmail.com> wrote: > The stacktrace line isn't the one you should be running. The test outputs > the file and line to run immediately following the test message. Here's an > example: > > 1) test run/1 raises exception when invalid switch is passed > (Mix.Tasks.Conduit.Gen.BrokerTest) > *test/mix/tasks/conduit.gen.broker_test.exs:17* > Expected exception OptionParser.Parserror but got > OptionParser.ParseError (1 error found! > --something-broken : Unknown option) > code: assert_raise OptionParser.Parserror, fn -> > stacktrace: > (elixir) lib/option_parser.ex:231: OptionParser.parse!/2 > (conduit) lib/mix/tasks/conduit.gen.broker.ex:26: > Mix.Tasks.Conduit.Gen.Broker.run/1 > test/mix/tasks/conduit.gen.broker_test.exs:18: (test) > > > Allen Madsen > http://www.allenmadsen.com > > > On Wed, Oct 24, 2018 at 4:53 PM OvermindDL1 <overmind...@gmail.com> wrote: > >> Maybe the test should accept a filename and line combination with an >> optional trailing colon instead? >> >> On Wednesday, October 24, 2018 at 2:19:59 PM UTC-6, Denis Gorbachev wrote: >>> >>> Current behavior >>> >>> On error, a stacktrace is displayed: >>> >>> >>> stacktrace: >>> (elixir) lib/gen_server.ex:924: GenServer.call/3 >>> test/leverex/loans/loan_server_test.exs:193: (test) >>> >>> >>> Expected behavior >>> >>> Same stacktrace, but without colons (":") >>> >>> >>> stacktrace: >>> (elixir) lib/gen_server.ex:924 GenServer.call/3 >>> test/leverex/loans/loan_server_test.exs:193 (test) >>> >>> >>> Rationale >>> >>> >>> When a single test fails, I copy the last line from stacktrace and >>> re-run the test with mix test.watch {filename}. Currently, I have to >>> remove the ":" manually, which is a slight annoyance, but it add up over >>> time. >>> >>> Examples >>> >>> Here are stacktraces of other languages: >>> >>> JavaScript (NodeJS): >>> >>> Error: >>> at /Users/cfisher/Git/squashed/execProcess.js:6:17 >>> at ChildProcess.exithandler (child_process.js:213:5) >>> at emitTwo (events.js:106:13) >>> at ChildProcess.emit (events.js:191:7) >>> at maybeClose (internal/child_process.js:877:16) >>> at Socket.<anonymous> (internal/child_process.js:334:11) >>> at emitOne (events.js:96:13) >>> at Socket.emit (events.js:188:7) >>> at Pipe._handle.close [as _onclose] (net.js:498:12) >>> >>> >>> Python: >>> >>> >>> *** print_exception:Traceback (most recent call last): >>> File "<doctest...>", line 10, in <module> >>> lumberjack() >>> File "<doctest...>", line 4, in lumberjack >>> bright_side_of_death() >>> >>> >>> >>> Go: >>> >>> Recover from panic: Fake error! >>> Stack of 402 bytes: goroutine 1 [running]: >>> main.funcĀ·001() >>> /Users/mbutcher/Code/Go/src/scratch/stack.go:21 +0xab >>> runtime.panic(0x80b80, 0x2101fb150) >>> /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/panic.c:248 +0x106 >>> main.inner() >>> /Users/mbutcher/Code/Go/src/scratch/stack.go:27 +0x68 >>> main.outer() >>> /Users/mbutcher/Code/Go/src/scratch/stack.go:13 +0x1a >>> main.main() >>> /Users/mbutcher/Code/Go/src/scratch/stack.go:9 +0x1a >>> >>> -- >> > You received this message because you are subscribed to the Google Groups >> "elixir-lang-core" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to elixir-lang-core+unsubscr...@googlegroups.com. > > >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/elixir-lang-core/64507398-b7ff-4480-a8be-826d46659693%40googlegroups.com >> <https://groups.google.com/d/msgid/elixir-lang-core/64507398-b7ff-4480-a8be-826d46659693%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> > -- > You received this message because you are subscribed to a topic in the > Google Groups "elixir-lang-core" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/elixir-lang-core/dBQQ8UBKMpQ/unsubscribe > . > To unsubscribe from this group and all its topics, send an email to > elixir-lang-core+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/elixir-lang-core/CAK-y3CtpoZCNGbNGdmPbtg%3DH%2Bgh%2BKJGn%2BYABeKPuqs%3DdgD50SA%40mail.gmail.com > <https://groups.google.com/d/msgid/elixir-lang-core/CAK-y3CtpoZCNGbNGdmPbtg%3DH%2Bgh%2BKJGn%2BYABeKPuqs%3DdgD50SA%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- Denis Gorbachev *Chief Executive Officer @ Spire <https://spireteam.com/>* Skype: faster-than-wind [image: https://www.facebook.com/denis.d.gorbachev] <https://www.facebook.com/denis.d.gorbachev> *[image: https://twitter.com/DenGorbachev] <https://twitter.com/DenGorbachev> *[image: https://ru.linkedin.com/in/dengorbachev] <https://ru.linkedin.com/in/dengorbachev> "Make something people want" -- You received this message because you are subscribed to the Google Groups "elixir-lang-core" group. To unsubscribe from this group and stop receiving emails from it, send an email to elixir-lang-core+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/CAPxRoczkhoT2Urso1kDf71naLhC-Sr8UpaQL%3DEq5dS5C0y5EcA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.