TODO: Write some tests