Factory test

add factory; 
add specs to be valid factory