[Solved]: Meteor acceptance test

@sam thats a very good point and I completely agree.

But in this particular app structure, you follow a “feature pattern” within the imports/_screens/ directory. A screen can be seen as a “mini” app as a composition of different components to provide “access” to a feature. The feature file for “that mini app” therefore be within that directory.

As this is pretty abstract, here an illustration.

App
├── ...
├── imports/
│   ├── #components/...
│   ├── _screens/   <---------------+   Directory structure
│   │   ├── _shared/                    follow routes. Routes
│   │   │   ├── _auth.jsx               follow features.
│   │   │   ├── _auth.less
│   │   │   ├── _notFound.jsx
│   │   │   └── _notFound.less
│   │   ├── join/
│   │   │   └── Join.jsx
│   │   ├── lists/            +-----+   Feature Lists (Specific)
│   │   │   ├── ListsContainer.jsx  |
│   │   │   ├── _Header.jsx         |   lists are a Feature
│   │   │   ├── _Header.less        |   of the App and are
│   │   │   ├── _Lists.jsx          |   made available under
│   │   │   ├── _Lists.less         |   the app.com/lists route.
│   │   │   ├── _TodoItem.jsx       |
│   │   │   └── _TodoItem.less      |   Acceptance Test tha
│   │   ├── signin/           +-----+   lists do work as expected
│   │   │   └── SignIn.jsx
│   │   ├── _App.jsx          +-----+   Feature App (Global)
│   │   ├── _App.less               |
│   │   ├── _ListList.jsx           |   feature of using
│   │   ├── _ListList.less          |   routes for navigation
│   │   ├── _Menu.jsx               |   welcome messages,
│   │   ├── _Menu.less              |   connectivity status
│   │   ├── AppContainer.jsx        |   etc.
│   │   └── routes.jsx        +-----+
│   ├── api/...
│   ├── lib/...
│   ├── server/...
│   ├── stylesheets/...
│   ├── client.entry.jsx
│   ├── server.entry.js
│   └── style.entry.less
├── ...

Imagine you want to acceptance test the user story to be able to manage lists. That feature lives with the screen - placing the feature files there - having the benefit to immediately see when you are short on tests of a particular feature.

Right now I am just thinking how to aggregate all the files again for chimp. Could chimp digest a “feature.entry.js” that requires / imports all the files from the screens sub-folders?

I have to admit, I have not yet played around much with chimp. But I certainly value your feedback.