diff --git a/common/static/coffee/spec/discussion/discussion_spec_helper.coffee b/common/static/coffee/spec/discussion/discussion_spec_helper.coffee
index 39f6fcd8db693365babd016f2c20bbea1fc34b80..c6ea6bfcc1d3393e946625ab8f57e338c9dff98c 100644
--- a/common/static/coffee/spec/discussion/discussion_spec_helper.coffee
+++ b/common/static/coffee/spec/discussion/discussion_spec_helper.coffee
@@ -6,8 +6,11 @@ class @DiscussionSpecHelper
         window.user = new DiscussionUser({username: "test_user", id: "567", upvoted_ids: []})
         DiscussionUtil.setUser(window.user)
 
+    @makeTA = () ->
+        DiscussionUtil.roleIds["Community TA"].push(parseInt(DiscussionUtil.getUser().id))
+
     @makeModerator = () ->
-        DiscussionUtil.roleIds["Moderator"].push(parseInt(window.user.id))
+        DiscussionUtil.roleIds["Moderator"].push(parseInt(DiscussionUtil.getUser().id))
 
     @makeAjaxSpy = (fakeAjax) ->
         spyOn($, "ajax").andCallFake(
diff --git a/common/static/coffee/spec/discussion/view/new_post_view_spec.coffee b/common/static/coffee/spec/discussion/view/new_post_view_spec.coffee
index ad7dc9ff66a1f2d35dbdf28895fc0bbd22493f22..cb0ee2cc617f273363814c623197f053a8d41f6b 100644
--- a/common/static/coffee/spec/discussion/view/new_post_view_spec.coffee
+++ b/common/static/coffee/spec/discussion/view/new_post_view_spec.coffee
@@ -141,19 +141,26 @@ describe "NewPostView", ->
           mode: "tab"
         )
 
-      expectCohortSelectorVisible = (view, visible) ->
-        expect(view.$(".js-group-select").is(":visible")).toEqual(visible)
+      checkVisibility = (view, expectedVisible) =>
+        view.render()
+        expect(view.$(".js-group-select").is(":visible")).toEqual(expectedVisible)
+        if expectedVisible
+          expect(view.$(".js-group-select").prop("disabled")).toEqual(false)
 
       it "is not visible to students", ->
-        @view.render()
-        expectCohortSelectorVisible(@view, false)
+        checkVisibility(@view, false)
+
+      it "allows TAs to see the cohort selector", ->
+        DiscussionSpecHelper.makeTA()
+        checkVisibility(@view, true)
 
-      it "allows moderators to select visibility", ->
+      it "allows moderators to see the cohort selector", ->
         DiscussionSpecHelper.makeModerator()
-        @view.render()
-        expectCohortSelectorVisible(@view, true)
-        expect(@view.$(".js-group-select").prop("disabled")).toEqual(false)
+        checkVisibility(@view, true)
 
+      it "allows the user to make a cohort selection", ->
+        DiscussionSpecHelper.makeModerator()
+        @view.render()
         expectedGroupId = null
         DiscussionSpecHelper.makeAjaxSpy(
           (params) -> expect(params.data.group_id).toEqual(expectedGroupId)
diff --git a/common/static/coffee/src/discussion/views/new_post_view.coffee b/common/static/coffee/src/discussion/views/new_post_view.coffee
index 8453ea017c16643938fdfb9d9f4d0f0f3f7338f0..04b6ad65fec207aaaf637416b0d8dfc51752bb55 100644
--- a/common/static/coffee/src/discussion/views/new_post_view.coffee
+++ b/common/static/coffee/src/discussion/views/new_post_view.coffee
@@ -41,7 +41,7 @@ if Backbone?
           html
 
       getCohortOptions: () ->
-          if @course_settings.get("is_cohorted") and DiscussionUtil.isStaff()
+          if @course_settings.get("is_cohorted") and DiscussionUtil.isPrivilegedUser()
               user_cohort_id = $("#discussion-container").data("user-cohort-id")
               _.map @course_settings.get("cohorts"), (cohort) ->
                   {value: cohort.id, text: cohort.name, selected: cohort.id==user_cohort_id}