Support more fields
This commit is contained in:
parent
75b0525986
commit
60eed343f6
|
@ -1,5 +1,13 @@
|
||||||
package org.telegram.abilitybots.api.bot;
|
package org.telegram.abilitybots.api.bot;
|
||||||
|
|
||||||
|
import static org.apache.commons.lang3.StringUtils.EMPTY;
|
||||||
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.verify;
|
||||||
|
import static org.mockito.internal.verification.VerificationModeFactory.times;
|
||||||
|
import static org.telegram.abilitybots.api.bot.TestUtils.mockContext;
|
||||||
|
import static org.telegram.abilitybots.api.db.MapDBContext.offlineInstance;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
import org.junit.jupiter.api.AfterEach;
|
import org.junit.jupiter.api.AfterEach;
|
||||||
import org.junit.jupiter.api.BeforeEach;
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
@ -9,18 +17,40 @@ import org.telegram.abilitybots.api.sender.MessageSender;
|
||||||
import org.telegram.abilitybots.api.sender.SilentSender;
|
import org.telegram.abilitybots.api.sender.SilentSender;
|
||||||
import org.telegram.telegrambots.meta.api.objects.User;
|
import org.telegram.telegrambots.meta.api.objects.User;
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
import static org.apache.commons.lang3.StringUtils.EMPTY;
|
|
||||||
import static org.mockito.Mockito.mock;
|
|
||||||
import static org.mockito.Mockito.verify;
|
|
||||||
import static org.mockito.internal.verification.VerificationModeFactory.times;
|
|
||||||
import static org.telegram.abilitybots.api.bot.TestUtils.mockContext;
|
|
||||||
import static org.telegram.abilitybots.api.db.MapDBContext.offlineInstance;
|
|
||||||
|
|
||||||
class AbilityBotI18nTest {
|
class AbilityBotI18nTest {
|
||||||
private static final User NO_LANGUAGE_USER = new User(1L, "first", false, "last", "username", null, false, false, false, null, null, null, null, null);
|
|
||||||
private static final User ITALIAN_USER = new User(2L, "first", false, "last", "username", "it-IT", false, false, false, null, null, null, null, null);
|
private static final User NO_LANGUAGE_USER = new User(1L,
|
||||||
|
"first",
|
||||||
|
false,
|
||||||
|
"last",
|
||||||
|
"username",
|
||||||
|
null,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null
|
||||||
|
);
|
||||||
|
private static final User ITALIAN_USER = new User(2L,
|
||||||
|
"first",
|
||||||
|
false,
|
||||||
|
"last",
|
||||||
|
"username",
|
||||||
|
"it-IT",
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null
|
||||||
|
);
|
||||||
|
|
||||||
private DBContext db;
|
private DBContext db;
|
||||||
private NoPublicCommandsBot bot;
|
private NoPublicCommandsBot bot;
|
||||||
|
|
|
@ -1,44 +1,5 @@
|
||||||
package org.telegram.abilitybots.api.bot;
|
package org.telegram.abilitybots.api.bot;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableMap;
|
|
||||||
import com.google.common.io.Files;
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
|
||||||
import org.junit.jupiter.api.AfterEach;
|
|
||||||
import org.junit.jupiter.api.Assertions;
|
|
||||||
import org.junit.jupiter.api.BeforeEach;
|
|
||||||
import org.junit.jupiter.api.Test;
|
|
||||||
import org.mockito.ArgumentMatchers;
|
|
||||||
import org.mockito.Mockito;
|
|
||||||
import org.telegram.abilitybots.api.db.DBContext;
|
|
||||||
import org.telegram.abilitybots.api.objects.Ability;
|
|
||||||
import org.telegram.abilitybots.api.objects.Flag;
|
|
||||||
import org.telegram.abilitybots.api.objects.Locality;
|
|
||||||
import org.telegram.abilitybots.api.objects.MessageContext;
|
|
||||||
import org.telegram.abilitybots.api.objects.Privacy;
|
|
||||||
import org.telegram.abilitybots.api.sender.MessageSender;
|
|
||||||
import org.telegram.abilitybots.api.sender.SilentSender;
|
|
||||||
import org.telegram.abilitybots.api.util.AbilityUtils;
|
|
||||||
import org.telegram.abilitybots.api.util.Pair;
|
|
||||||
import org.telegram.abilitybots.api.util.Trio;
|
|
||||||
import org.telegram.telegrambots.meta.api.methods.groupadministration.GetChatAdministrators;
|
|
||||||
import org.telegram.telegrambots.meta.api.objects.Document;
|
|
||||||
import org.telegram.telegrambots.meta.api.objects.File;
|
|
||||||
import org.telegram.telegrambots.meta.api.objects.Message;
|
|
||||||
import org.telegram.telegrambots.meta.api.objects.Update;
|
|
||||||
import org.telegram.telegrambots.meta.api.objects.User;
|
|
||||||
import org.telegram.telegrambots.meta.api.objects.chatmember.ChatMember;
|
|
||||||
import org.telegram.telegrambots.meta.api.objects.chatmember.ChatMemberAdministrator;
|
|
||||||
import org.telegram.telegrambots.meta.exceptions.TelegramApiException;
|
|
||||||
|
|
||||||
import java.io.BufferedWriter;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.nio.charset.Charset;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Optional;
|
|
||||||
import java.util.Set;
|
|
||||||
import java.util.function.Consumer;
|
|
||||||
|
|
||||||
import static com.google.common.collect.Lists.newArrayList;
|
import static com.google.common.collect.Lists.newArrayList;
|
||||||
import static com.google.common.collect.Sets.newHashSet;
|
import static com.google.common.collect.Sets.newHashSet;
|
||||||
import static java.lang.String.format;
|
import static java.lang.String.format;
|
||||||
|
@ -74,6 +35,44 @@ import static org.telegram.abilitybots.api.objects.Privacy.ADMIN;
|
||||||
import static org.telegram.abilitybots.api.objects.Privacy.GROUP_ADMIN;
|
import static org.telegram.abilitybots.api.objects.Privacy.GROUP_ADMIN;
|
||||||
import static org.telegram.abilitybots.api.objects.Privacy.PUBLIC;
|
import static org.telegram.abilitybots.api.objects.Privacy.PUBLIC;
|
||||||
|
|
||||||
|
import com.google.common.collect.ImmutableMap;
|
||||||
|
import com.google.common.io.Files;
|
||||||
|
import java.io.BufferedWriter;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.nio.charset.Charset;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Optional;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import org.junit.jupiter.api.AfterEach;
|
||||||
|
import org.junit.jupiter.api.Assertions;
|
||||||
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.mockito.ArgumentMatchers;
|
||||||
|
import org.mockito.Mockito;
|
||||||
|
import org.telegram.abilitybots.api.db.DBContext;
|
||||||
|
import org.telegram.abilitybots.api.objects.Ability;
|
||||||
|
import org.telegram.abilitybots.api.objects.Flag;
|
||||||
|
import org.telegram.abilitybots.api.objects.Locality;
|
||||||
|
import org.telegram.abilitybots.api.objects.MessageContext;
|
||||||
|
import org.telegram.abilitybots.api.objects.Privacy;
|
||||||
|
import org.telegram.abilitybots.api.sender.MessageSender;
|
||||||
|
import org.telegram.abilitybots.api.sender.SilentSender;
|
||||||
|
import org.telegram.abilitybots.api.util.AbilityUtils;
|
||||||
|
import org.telegram.abilitybots.api.util.Pair;
|
||||||
|
import org.telegram.abilitybots.api.util.Trio;
|
||||||
|
import org.telegram.telegrambots.meta.api.methods.groupadministration.GetChatAdministrators;
|
||||||
|
import org.telegram.telegrambots.meta.api.objects.Document;
|
||||||
|
import org.telegram.telegrambots.meta.api.objects.File;
|
||||||
|
import org.telegram.telegrambots.meta.api.objects.Message;
|
||||||
|
import org.telegram.telegrambots.meta.api.objects.Update;
|
||||||
|
import org.telegram.telegrambots.meta.api.objects.User;
|
||||||
|
import org.telegram.telegrambots.meta.api.objects.chatmember.ChatMember;
|
||||||
|
import org.telegram.telegrambots.meta.api.objects.chatmember.ChatMemberAdministrator;
|
||||||
|
import org.telegram.telegrambots.meta.exceptions.TelegramApiException;
|
||||||
|
|
||||||
public class AbilityBotTest {
|
public class AbilityBotTest {
|
||||||
// Messages
|
// Messages
|
||||||
private static final String RECOVERY_MESSAGE = "I am ready to receive the backup file. Please reply to this message with the backup file attached.";
|
private static final String RECOVERY_MESSAGE = "I am ready to receive the backup file. Please reply to this message with the backup file attached.";
|
||||||
|
@ -374,7 +373,22 @@ public class AbilityBotTest {
|
||||||
String newFirstName = USER.getFirstName() + "-test";
|
String newFirstName = USER.getFirstName() + "-test";
|
||||||
String newLastName = USER.getLastName() + "-test";
|
String newLastName = USER.getLastName() + "-test";
|
||||||
long sameId = USER.getId();
|
long sameId = USER.getId();
|
||||||
User changedUser = new User(sameId, newFirstName, false, newLastName, newUsername, "en", false, false, false, null, null, null, null, null);
|
User changedUser = new User(sameId,
|
||||||
|
newFirstName,
|
||||||
|
false,
|
||||||
|
newLastName,
|
||||||
|
newUsername,
|
||||||
|
"en",
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null
|
||||||
|
);
|
||||||
|
|
||||||
mockAlternateUser(update, message, changedUser);
|
mockAlternateUser(update, message, changedUser);
|
||||||
|
|
||||||
|
|
|
@ -1,18 +1,49 @@
|
||||||
package org.telegram.abilitybots.api.bot;
|
package org.telegram.abilitybots.api.bot;
|
||||||
|
|
||||||
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
|
import static org.telegram.abilitybots.api.objects.MessageContext.newContext;
|
||||||
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.telegram.abilitybots.api.objects.MessageContext;
|
import org.telegram.abilitybots.api.objects.MessageContext;
|
||||||
import org.telegram.telegrambots.meta.api.objects.Message;
|
import org.telegram.telegrambots.meta.api.objects.Message;
|
||||||
import org.telegram.telegrambots.meta.api.objects.Update;
|
import org.telegram.telegrambots.meta.api.objects.Update;
|
||||||
import org.telegram.telegrambots.meta.api.objects.User;
|
import org.telegram.telegrambots.meta.api.objects.User;
|
||||||
|
|
||||||
import static org.mockito.Mockito.mock;
|
|
||||||
import static org.mockito.Mockito.when;
|
|
||||||
import static org.telegram.abilitybots.api.objects.MessageContext.newContext;
|
|
||||||
|
|
||||||
public final class TestUtils {
|
public final class TestUtils {
|
||||||
public static final User USER = new User(1L, "first", false, "last", "username", null, false, false, false, null, null, null, null, null);
|
|
||||||
public static final User CREATOR = new User(1337L, "creatorFirst", false, "creatorLast", "creatorUsername", null, false, false, false, null, null, null, null, null);
|
public static final User USER = new User(1L,
|
||||||
|
"first",
|
||||||
|
false,
|
||||||
|
"last",
|
||||||
|
"username",
|
||||||
|
null,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
public static final User CREATOR = new User(1337L,
|
||||||
|
"creatorFirst",
|
||||||
|
false,
|
||||||
|
"creatorLast",
|
||||||
|
"creatorUsername",
|
||||||
|
null,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
|
||||||
private TestUtils() {
|
private TestUtils() {
|
||||||
|
|
||||||
|
|
|
@ -55,6 +55,7 @@ public class Chat implements BotApiObject {
|
||||||
private static final String SUPERGROUPCHATTYPE = "supergroup";
|
private static final String SUPERGROUPCHATTYPE = "supergroup";
|
||||||
|
|
||||||
private static final String IS_VERIFIED_FIELD = "is_verified";
|
private static final String IS_VERIFIED_FIELD = "is_verified";
|
||||||
|
private static final String IS_SUPPORT_FIELD = "is_support";
|
||||||
private static final String IS_RESTRICTED_FIELD = "is_restricted";
|
private static final String IS_RESTRICTED_FIELD = "is_restricted";
|
||||||
private static final String IS_CREATOR_FIELD = "is_creator";
|
private static final String IS_CREATOR_FIELD = "is_creator";
|
||||||
private static final String IS_SCAM_FIELD = "is_scam";
|
private static final String IS_SCAM_FIELD = "is_scam";
|
||||||
|
@ -143,6 +144,8 @@ public class Chat implements BotApiObject {
|
||||||
|
|
||||||
@JsonProperty(IS_VERIFIED_FIELD)
|
@JsonProperty(IS_VERIFIED_FIELD)
|
||||||
private Boolean isVerified; ///< Optional. Extra.
|
private Boolean isVerified; ///< Optional. Extra.
|
||||||
|
@JsonProperty(IS_SUPPORT_FIELD)
|
||||||
|
private Boolean isSupport; ///< Optional. Extra.
|
||||||
@JsonProperty(IS_CREATOR_FIELD)
|
@JsonProperty(IS_CREATOR_FIELD)
|
||||||
private Boolean isCreator; ///< Optional. Extra.
|
private Boolean isCreator; ///< Optional. Extra.
|
||||||
@JsonProperty(IS_SCAM_FIELD)
|
@JsonProperty(IS_SCAM_FIELD)
|
||||||
|
|
|
@ -38,6 +38,7 @@ public class User implements BotApiObject {
|
||||||
private static final String IS_RESTRICTED_FIELD = "is_restricted";
|
private static final String IS_RESTRICTED_FIELD = "is_restricted";
|
||||||
private static final String IS_CREATOR_FIELD = "is_creator";
|
private static final String IS_CREATOR_FIELD = "is_creator";
|
||||||
private static final String IS_SCAM_FIELD = "is_scam";
|
private static final String IS_SCAM_FIELD = "is_scam";
|
||||||
|
private static final String IS_SUPPORT_FIELD = "is_support";
|
||||||
private static final String IS_FAKE_FIELD = "is_fake";
|
private static final String IS_FAKE_FIELD = "is_fake";
|
||||||
private static final String IS_DELETED_FIELD = "is_deleted";
|
private static final String IS_DELETED_FIELD = "is_deleted";
|
||||||
|
|
||||||
|
@ -75,6 +76,8 @@ public class User implements BotApiObject {
|
||||||
private Boolean isCreator; ///< Optional. Extra.
|
private Boolean isCreator; ///< Optional. Extra.
|
||||||
@JsonProperty(IS_SCAM_FIELD)
|
@JsonProperty(IS_SCAM_FIELD)
|
||||||
private Boolean isScam; ///< Optional. Extra.
|
private Boolean isScam; ///< Optional. Extra.
|
||||||
|
@JsonProperty(IS_SUPPORT_FIELD)
|
||||||
|
private Boolean isSupport; ///< Optional. Extra.
|
||||||
@JsonProperty(IS_FAKE_FIELD)
|
@JsonProperty(IS_FAKE_FIELD)
|
||||||
private Boolean isFake; ///< Optional. Extra.
|
private Boolean isFake; ///< Optional. Extra.
|
||||||
@JsonProperty(IS_DELETED_FIELD)
|
@JsonProperty(IS_DELETED_FIELD)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user