public void SearchDialogs_ProfileAndChat_Response() { url = "https://api.vk.com/method/messages.searchDialogs?q=Маша&access_token=token"; json = @"{ 'response': [ { 'type': 'profile', 'uid': 1708231, 'first_name': 'Григорий', 'last_name': 'Клюшников' }, { 'type': 'chat', 'id': 109, 'title': 'Андрей, Григорий', 'users': [ 66748, 6492, 1708231 ] } ] }"; SearchDialogsResponse response = Cat.SearchDialogs("Маша"); Assert.That(response.Users.Count, Is.EqualTo(1)); Assert.That(response.Chats.Count, Is.EqualTo(1)); Assert.That(response.Users[0].Id, Is.EqualTo(1708231)); Assert.That(response.Users[0].FirstName, Is.EqualTo("Григорий")); Assert.That(response.Users[0].LastName, Is.EqualTo("Клюшников")); Assert.That(response.Chats[0].Id, Is.EqualTo(109)); Assert.That(response.Chats[0].Title, Is.EqualTo("Андрей, Григорий")); Assert.That(response.Chats[0].Users.Count(), Is.EqualTo(3)); Assert.That(response.Chats[0].Users.ElementAt(0), Is.EqualTo(66748)); Assert.That(response.Chats[0].Users.ElementAt(1), Is.EqualTo(6492)); Assert.That(response.Chats[0].Users.ElementAt(2), Is.EqualTo(1708231)); }
public SearchDialogsResponse SearchDialogs([NotNull] string query, ProfileFields fields = null, uint limit = 20) { if (string.IsNullOrEmpty(query)) { throw new ArgumentException("Query can not be null or empty.", "query"); } var parameters = new VkParameters { { "q", query }, { "fields", fields }, { "limit", limit } }; VkResponseArray response = _vk.Call("messages.searchDialogs", parameters); var result = new SearchDialogsResponse(); foreach (var record in response) { string type = record["type"]; switch (type) { case "profile": result.Users.Add(record); break; case "chat": result.Chats.Add(record); break; case "email": // TODO: Add email support. continue; } } return(result); }
public SearchDialogsResponse SearchDialogs([NotNull] string query, ProfileFields fields = null) { if (string.IsNullOrEmpty(query)) throw new ArgumentException("Query can not be null or empty.", "query"); var parameters = new VkParameters { { "q", query }, { "fields", fields } }; VkResponseArray response = _vk.Call("messages.searchDialogs", parameters); var result = new SearchDialogsResponse(); foreach (var record in response) { string type = record["type"]; if (type == "profile") result.Users.Add(record); else if (type == "chat") result.Chats.Add(record); // TODO: Add email support. } return result; }
public SearchDialogsResponse SearchDialogs([NotNull] string query, ProfileFields fields = null, uint limit = 20) { if (string.IsNullOrEmpty(query)) { throw new ArgumentException("Query can not be null or empty.", "query"); } var parameters = new VkParameters { { "q", query }, { "fields", fields }, { "limit", limit } }; VkResponseArray response = _vk.Call("messages.searchDialogs", parameters); var result = new SearchDialogsResponse(); foreach (var record in response) { string type = record["type"]; switch (type) { case "profile": { result.Users.Add(record); break; } case "chat": { result.Chats.Add(record); break; } case "email": { // TODO: Add email support. continue; } } } return result; }