ozontech / allure-go

Complete Allure provider in Go which doesn't overload the interface usage
https://t.me/allure_go_chat
Apache License 2.0
306 stars 33 forks source link

Support t.Helper() #84

Closed siller174 closed 5 months ago

siller174 commented 6 months ago

1) Support Helper() in StepCtx

2) Add t.Helper() to Error() and ErrorF

Test: bla_test.go

func TestName(t *testing.T) {
    runner.Run(t, "Single test with allure-go Runner", func(t provider.T) {
        t.Epic("Compare with allure-go")
        t.Description("New Test Description")
        t.WithNewStep("Step description", func(ctx provider.StepCtx) {
            ctx.Errorf("Error message")
        })
    })
}

func TestName1(t *testing.T) {
    runner.Run(t, "Single test with allure-go Runner", func(t provider.T) {
        t.Errorf("Error message")
    })
}

Logs without helper:

=== RUN   TestName
=== RUN   TestName/Single_test_with_allure-go_Runner
    common.go:125: Error message
--- FAIL: TestName (0.00s)
    --- FAIL: TestName/Single_test_with_allure-go_Runner (0.00s)

=== RUN   TestName1
=== RUN   TestName1/Single_test_with_allure-go_Runner
    common.go:125: Error message
--- FAIL: TestName1 (0.00s)
    --- FAIL: TestName1/Single_test_with_allure-go_Runner (0.00s)

Log with helper:

=== RUN   TestName
=== RUN   TestName/Single_test_with_allure-go_Runner
     bla_test.go:22: Error message  <--- trace from test
--- FAIL: TestName (0.00s)
    --- FAIL: TestName/Single_test_with_allure-go_Runner (0.00s)

=== RUN   TestName1
=== RUN   TestName1/Single_test_with_allure-go_Runner
    bla_test.go:22: Error message <--- trace from test
--- FAIL: TestName1 (0.00s)
    --- FAIL: TestName1/Single_test_with_allure-go_Runner (0.00s)

FAIL
siller174 commented 5 months ago

https://github.com/ozontech/allure-go/pull/85