Skip to content

Conversation

@JonathanOppenheimer
Copy link
Member

@JonathanOppenheimer JonathanOppenheimer commented Jan 26, 2026

Closes #111. This adds a test logger for libevm, that treats errors as they should be treated.

  • Logs at log.LevelWarn and above trigger t.Errorf(), causing tests to fail
  • Critical logs fail immediately: Logs at log.LevelCrit trigger t.Fatalf()
  • Info/debug logs pass through: Lower severity logs use t.Logf() for informational output

You can use the logger like this:

  import (                                                                                                                                         
      "github.com/ava-labs/libevm/log"                                                                                                             
      "github.com/ava-labs/strevm/saetest"                                                                                                         
  )                                                                                                                                                
                                                                                                                                                   
  func TestSomething(t *testing.T) {                                                                                                                 
     logger := log.NewLogger(saetest.NewTBHandler(t))                                                                                                 
     
     // Or to set globally                                                                                                                            
     log.SetDefault(log.NewLogger(saetest.NewTBHandler(t)))                                                                                                                                                                                                
  }     

I was thinking about adding tests to show this works, but it seemed silly to test a testing utility.

@JonathanOppenheimer JonathanOppenheimer self-assigned this Jan 26, 2026
@JonathanOppenheimer JonathanOppenheimer added the enhancement New feature or request label Jan 26, 2026
@JonathanOppenheimer JonathanOppenheimer added the testing Related to testing efforts label Jan 26, 2026
@ARR4N
Copy link
Collaborator

ARR4N commented Jan 26, 2026

Love it! But I think it belongs in libevm. Please put it in ava-labs/libevm/libevm/ethtest.

@JonathanOppenheimer
Copy link
Member Author

Love it! But I think it belongs in libevm. Please put it in ava-labs/libevm/libevm/ethtest.

Got it! Opened a new PR here: ava-labs/libevm#259

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request testing Related to testing efforts

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test Logger with libevm

3 participants