complete spec for blog post