Exemplo n.º 1
0
        public string GetUsernameForObject(InternalVkApiObject vkApiObject)
        {
            var id = vkApiObject.Id.Value;

            if (vkApiObject.Type == InternalVkObjectType.Group)
            {
                return(idsToGroupsCache.GetOrAdd(id).Name);
            }

            return(idsToUsersCache.GetOrAdd(id).ToUsername());
        }
Exemplo n.º 2
0
        public void Cache_Group()
        {
            var apiObject = new InternalVkApiObject()
            {
                Id = 123, Type = InternalVkObjectType.Group
            };

            A.CallTo(() => vkClient.GetGroupById(A <InternalVkApiGetGroupByIdRequestParams> .Ignored))
            .Returns(A.Dummy <InternalVkApiGroup>());

            usernameProvider.GetUsernameForObject(apiObject);
            usernameProvider.GetUsernameForObject(apiObject);

            A.CallTo(() => vkClient.GetGroupById(A <InternalVkApiGetGroupByIdRequestParams> .Ignored))
            .MustHaveHappenedOnceExactly();
        }
Exemplo n.º 3
0
        public void Cache_User()
        {
            var apiObject = new InternalVkApiObject()
            {
                Id = 123, Type = InternalVkObjectType.User
            };

            A.CallTo(() => vkClient.GetUsers(A <InternalVkApiUserGetRequestParams> .Ignored))
            .Returns(new[] { A.Dummy <InternalVkApiUser>() });

            usernameProvider.GetUsernameForObject(apiObject);
            usernameProvider.GetUsernameForObject(apiObject);

            A.CallTo(() => vkClient.GetUsers(A <InternalVkApiUserGetRequestParams> .Ignored))
            .MustHaveHappenedOnceExactly();
        }
 public static long?BuildOwnerId(InternalVkApiObject internalObject)
 {
     return(internalObject.Type == InternalVkObjectType.Group
                ? -internalObject.Id
                : internalObject.Id);
 }