pass context instead of creating it
updated tests