added list factory and amended tests