data constructor tested