def test_get_members(): config = PNConfiguration() config.subscribe_key = SUB_KEY config.auth_key = AUTH membership = PubNub(config).get_members() membership.include(['a', 'b']).limit(30).end('XXX') with pytest.raises(PubNubException): membership.validate_params() membership.space_id('foo') assert membership.build_path() == GetMembers.GET_MEMBERS_PATH % (SUB_KEY, 'foo') params = membership.custom_params() assert params['include'] == 'a,b' assert params['limit'] == 30 assert params['end'] == 'XXX' assert 'count' not in params membership.start('YYY').count(True) params = membership.custom_params() assert 'end' not in params assert params['start'] == 'YYY' assert params['count'] is True assert AUTH == membership.build_params_callback()({})['auth']
def test_manage_memberships(): config = PNConfiguration() config.subscribe_key = SUB_KEY config.auth_key = AUTH membership = PubNub(config).manage_memberships() membership.include(['custom']).limit(30).end('XXX') with pytest.raises(PubNubException): membership.validate_params() membership.user_id('foo') assert membership.build_path( ) == ManageMemberships.MANAGE_MEMBERSHIPS_PATH % (SUB_KEY, 'foo') params = membership.custom_params() assert params['include'] == 'custom' assert params['limit'] == 30 assert params['end'] == 'XXX' assert 'count' not in params membership.start('YYY').count(True) params = membership.custom_params() assert 'end' not in params assert params['start'] == 'YYY' assert params['count'] is True assert AUTH == membership.build_params_callback()({})['auth'] membership.data({"add": [{"id": "my-channel"}]}) assert membership.build_data() == '{"add": [{"id": "my-channel"}]}'
def test_get_spaces(): config = PNConfiguration() config.subscribe_key = SUB_KEY config.auth_key = AUTH spaces = PubNub(config).get_spaces() spaces.include(['a', 'b']).limit(30).end('XXX') assert spaces.build_path() == GetSpaces.GET_SPACES_PATH % SUB_KEY params = spaces.custom_params() assert params['include'] == ['a', 'b'] assert params['limit'] == 30 assert params['end'] == 'XXX' assert 'count' not in params spaces.start('YYY').count(True) params = spaces.custom_params() assert 'end' not in params assert params['start'] == 'YYY' assert params['count'] is True assert AUTH == spaces.build_params_callback()({})['auth']
def test_get_user(): config = PNConfiguration() config.subscribe_key = SUB_KEY config.auth_key = AUTH user = PubNub(config).get_user() user.include(['a', 'b']) with pytest.raises(PubNubException): user.build_path() user.user_id('foo') assert user.build_path() == GetUser.GET_USER_PATH % (SUB_KEY, 'foo') params = user.custom_params() assert params['include'] == ['a', 'b'] assert AUTH == user.build_params_callback()({})['auth']
def test_get_space(): config = PNConfiguration() config.subscribe_key = SUB_KEY config.auth_key = AUTH space = PubNub(config).get_space() space.include(['a', 'b']) with pytest.raises(PubNubException): space.build_path() space.space_id('foo') assert space.build_path() == GetSpace.GET_SPACE_PATH % (SUB_KEY, 'foo') params = space.custom_params() assert params['include'] == ['a', 'b'] assert AUTH == space.build_params_callback()({})['auth']
def test_fire(): pnconf.auth_key = AUTH fire = PubNub(pnconf).fire() fire.channel(CHAN).message(MSG) assert fire.build_path() == Fire.FIRE_GET_PATH % (PUB_KEY, SUB_KEY, CHAN, 0, MSG_ENCODED) fire.use_post(True) assert fire.build_path() == Fire.FIRE_POST_PATH % (PUB_KEY, SUB_KEY, CHAN, 0) params = fire.custom_params() assert params['store'] == '0' assert params['norep'] == '1' fire.meta(META) assert 'meta' in fire.build_params_callback()({}) assert json.dumps(META) == fire.build_params_callback()({})['meta'] assert 'auth' in fire.build_params_callback()({}) assert AUTH == fire.build_params_callback()({})['auth']