|
40 | 40 | describe "GET #index" do |
41 | 41 | before { login(user) } |
42 | 42 |
|
43 | | - it 'sorts the users by their member_uid asc by default' do |
44 | | - member.increment!(:member_uid, Member.maximum(:member_uid) + 1) |
| 43 | + it 'sorts the users by their last_sign_in_at desc by default' do |
| 44 | + member.user.update_column(:last_sign_in_at, DateTime.now) |
| 45 | + another_member.user.update_column(:last_sign_in_at, nil) |
45 | 46 |
|
46 | 47 | get :index |
47 | 48 |
|
48 | | - expect(assigns(:members).last).to eq(member) |
| 49 | + expect(assigns(:members).first).to eq(member) |
| 50 | + expect(assigns(:members).last).to eq(another_member) |
49 | 51 | end |
50 | 52 |
|
51 | 53 | it 'allows to sort by member_uid' do |
|
81 | 83 |
|
82 | 84 | context "with an normal logged user" do |
83 | 85 | it "populates and array of users" do |
84 | | - login(user) |
85 | | - |
86 | 86 | get "index" |
87 | 87 |
|
88 | 88 | expect(assigns(:members).map(&:user)) |
|
101 | 101 | end |
102 | 102 | end |
103 | 103 |
|
| 104 | + context 'when searching' do |
| 105 | + it 'allows to search by member_uid' do |
| 106 | + user = Fabricate(:user, username: 'foo', email: '[email protected]') |
| 107 | + member = Fabricate(:member, user: user, organization: test_organization, member_uid: 1000) |
| 108 | + |
| 109 | + get :index, q: { user_username_or_user_email_or_member_uid_search_contains: 1000 } |
| 110 | + |
| 111 | + expect(assigns(:members)).to include(member) |
| 112 | + end |
| 113 | + end |
| 114 | + end |
| 115 | + |
| 116 | + describe "GET #manage" do |
| 117 | + before { login(user) } |
| 118 | + |
| 119 | + it 'sorts the users by their member_uid asc by default' do |
| 120 | + member.increment!(:member_uid, Member.maximum(:member_uid) + 1) |
| 121 | + |
| 122 | + get :manage |
| 123 | + |
| 124 | + expect(assigns(:members).last).to eq(member) |
| 125 | + end |
| 126 | + |
104 | 127 | context 'when sorting by balance' do |
105 | 128 | before do |
106 | | - login(user) |
107 | 129 | member_admin.account.update_attribute(:balance, 3600) |
108 | 130 | end |
109 | 131 |
|
110 | 132 | context 'desc' do |
111 | 133 | let(:direction) { 'desc' } |
112 | 134 |
|
113 | 135 | it 'orders the rows by their balance' do |
114 | | - get :index, q: { s: "account_balance #{direction}" } |
| 136 | + get :manage, q: { s: "account_balance #{direction}" } |
115 | 137 |
|
116 | 138 | expect(assigns(:members).pluck(:user_id).first).to eq(admin_user.id) |
117 | 139 | end |
|
121 | 143 | let(:direction) { 'asc' } |
122 | 144 |
|
123 | 145 | it 'orders the rows by their balance' do |
124 | | - get :index, q: { s: "account_balance #{direction}" } |
| 146 | + get :manage, q: { s: "account_balance #{direction}" } |
125 | 147 |
|
126 | 148 | expect(assigns(:members).pluck(:user_id).last).to eq(admin_user.id) |
127 | 149 | end |
128 | 150 | end |
129 | 151 | end |
130 | | - |
131 | | - context 'when searching' do |
132 | | - it 'allows to search by member_uid' do |
133 | | - user = Fabricate(:user, username: 'foo', email: '[email protected]') |
134 | | - member = Fabricate(:member, user: user, organization: test_organization, member_uid: 1000) |
135 | | - |
136 | | - get :index, q: { user_username_or_user_email_or_member_uid_search_contains: 1000 } |
137 | | - |
138 | | - expect(assigns(:members)).to include(member) |
139 | | - end |
140 | | - end |
141 | 152 | end |
142 | 153 |
|
143 | 154 | describe "GET #show" do |
|
0 commit comments