close #55 & add base tests