test + docs