How do I check if a posts status is set to draft or pending?

To check post with post status private, you could run the following:

if (get_post_status() == 'private' && is_user_logged_in()) {
     // it's private and user is logged in, do stuff
} elseif (get_post_status() == 'draft') {
     // it's draft, do stuff
} else {
      // it's something else, do stuff
}

Or, in your current setup, you can simply only display published posts via:

if (get_post_status() == 'publish') {
     // it's published, do stuff
     $this->render();
}

You can learn more about post statuses via the codex page.