add units tests