moved spec into separate file