Looking in

```
SAGE_ROOT/local/bin/sage-sage
```

we see that "sage -testall" calls the script **sage-maketest** which passes all of its options on to "sage -t" with a specific list of paths (all one line):

```
"$SAGE_ROOT"/sage -t -sagenb "$@" "$SAGE_ROOT"/devel/sage/doc/common \
"$SAGE_ROOT"/devel/sage/doc/en "$SAGE_ROOT"/devel/sage/doc/fr \
"$SAGE_ROOT"/devel/sage/sage 2>&1 | tee -a "$SAGE_TEST_LOG"
```

Thus if you do:

```
sage --testall --long
```

then this is like "make testlong". If you just do

```
sage -- testall
```

then this is identical to "make test" (if you look in `SAGE_ROOT/makefile`

you'll see that **make test** just calls sage-maketest. Note that **make testlong** on the other hand has a specific list of directories it tests, defined in `SAGE_ROOT/makefile`

. Right now they match the list in SAGE_ROOT/local/bin/sage-maketest. However, if these ever get out of sync, bad things will happen in that "make test" and "make testlong" would suddenly test different code. Somebody could open a trac ticket to unify these before something bad happens.