def test_data_state_string(self): check_map = { UserData.JOIN_STATE_WAITING: 'waiting', UserData.JOIN_STATE_ALLOWED: 'allowed', UserData.JOIN_STATE_BLOCKED: 'blocked' } for state, representation in check_map.items(): data = UserData() data.join_state = state self.assertIn(representation, data.state_string().lower())
def _block_user(self, user_id): userdata = user_id.user_data if userdata is None: userdata = UserData() user_id.user_data = userdata userdata.join_state = UserData.JOIN_STATE_BLOCKED self._user_manager.update(user_id) message = self._auth_handler.on_host_deny(user_id) return build_answer('User denied.', message)
def test_may_join_blocked_user(self): data = UserData() data.max_num_joins = 1 data.num_joins = 2 valid_time = time.time() - 10000 data.valid_until = valid_time data.join_state = UserData.JOIN_STATE_BLOCKED mgr, testuser = self._get_mgr_with_one_user_and_data(data) result = mgr.may_join(testuser) self.assert_state_blocked(result) # attributes should be unchanged self.assertEqual(data.max_num_joins, 1) self.assertEqual(data.num_joins, 2) self.assertEqual(data.valid_until, valid_time)