Skip to content

Test functions should work when defined inside other functions #612

Open
@steveklabnik

Description

@steveklabnik

Issue by brson
Wednesday Sep 19, 2012 at 01:12 GMT

For earlier discussion, see rust-lang/rust#3532

This issue was labelled with: A-frontend, A-testsuite, E-hard, I-wishlist in the Rust repository


This doesn't work, but I frequently want to do it

fn foo() {

  ...

  #[test]
  fn test1() { }
}

The generated code for running test functions uses paths to the tests, and it's not possible to generate a path to test1. The test runner already breaks resolution rules to run private tests, so maybe we can break yet more.

We would want to consider though how this could work with reflection-based test runners - the way we currently break visibility rules to run tests is already bad news for reflection.

Metadata

Metadata

Assignees

No one assigned

    Labels

    T-compilerRelevant to the compiler team, which will review and decide on the RFC.T-langRelevant to the language team, which will review and decide on the RFC.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions