or run

tessl search
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-4/

{
  "context": "This criteria evaluates how well the engineer uses Nx's testing utilities and devkit APIs to implement and test a custom generator. The focus is on proper usage of Tree, createTreeWithEmptyWorkspace, readProjectConfiguration, and other testing-specific APIs from @nx/devkit.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Tree manipulation",
      "description": "Uses Tree interface methods (write, read, exists) to create and verify files in the generator implementation",
      "max_score": 20
    },
    {
      "name": "createTreeWithEmptyWorkspace usage",
      "description": "Uses createTreeWithEmptyWorkspace() or similar utilities to create a virtual tree for testing the generator",
      "max_score": 20
    },
    {
      "name": "Configuration APIs",
      "description": "Uses addProjectConfiguration() or updateProjectConfiguration() to add the library project to the workspace",
      "max_score": 15
    },
    {
      "name": "readProjectConfiguration testing",
      "description": "Uses readProjectConfiguration() in tests to verify the project was added correctly to the workspace",
      "max_score": 15
    },
    {
      "name": "Tree assertions",
      "description": "Uses tree.exists() and tree.read() in tests to verify generated files exist and contain expected content",
      "max_score": 15
    },
    {
      "name": "Generator invocation",
      "description": "Properly invokes the generator function in tests, passing the virtual tree and options",
      "max_score": 10
    },
    {
      "name": "File path utilities",
      "description": "Uses joinPathFragments() or similar path utilities from @nx/devkit for constructing file paths",
      "max_score": 5
    }
  ]
}