diff --git a/telegrambots-meta/src/main/java/org/telegram/telegrambots/meta/api/objects/replykeyboard/buttons/KeyboardRow.java b/telegrambots-meta/src/main/java/org/telegram/telegrambots/meta/api/objects/replykeyboard/buttons/KeyboardRow.java index 571e19d6..b1b76ecb 100644 --- a/telegrambots-meta/src/main/java/org/telegram/telegrambots/meta/api/objects/replykeyboard/buttons/KeyboardRow.java +++ b/telegrambots-meta/src/main/java/org/telegram/telegrambots/meta/api/objects/replykeyboard/buttons/KeyboardRow.java @@ -4,6 +4,7 @@ import org.telegram.telegrambots.meta.api.interfaces.Validable; import org.telegram.telegrambots.meta.exceptions.TelegramApiValidationException; import java.util.ArrayList; +import java.util.List; /** * @author Ruben Bermudez @@ -20,6 +21,10 @@ public class KeyboardRow extends ArrayList implements Validable super.add(index, new KeyboardButton(text)); } + public void addAll(List buttonNames) { + buttonNames.forEach(name -> super.add(new KeyboardButton(name))); + } + public boolean contains(String text) { return super.contains(new KeyboardButton(text)); } diff --git a/telegrambots-meta/src/test/java/org/telegram/telegrambots/meta/api/objects/replykeyboard/buttons/KeyboardRowTest.java b/telegrambots-meta/src/test/java/org/telegram/telegrambots/meta/api/objects/replykeyboard/buttons/KeyboardRowTest.java new file mode 100644 index 00000000..3e4f87f6 --- /dev/null +++ b/telegrambots-meta/src/test/java/org/telegram/telegrambots/meta/api/objects/replykeyboard/buttons/KeyboardRowTest.java @@ -0,0 +1,34 @@ +package org.telegram.telegrambots.meta.api.objects.replykeyboard.buttons; + +import org.junit.Test; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import static java.util.Arrays.asList; +import static org.hamcrest.core.Is.is; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertTrue; + +public class KeyboardRowTest { + + private static final List BUTTON_NAMES = asList("Carlotta Valdes", "Jimmy Stewart"); + + @Test + public void shouldAddAllButtons() { + final KeyboardRow keyboardRow = new KeyboardRow(); + keyboardRow.addAll(BUTTON_NAMES); + assertThat(keyboardRow.size(), is(2)); + assertThat(keyboardRow.get(0).getText(), is("Carlotta Valdes")); + assertThat(keyboardRow.get(1).getText(), is("Jimmy Stewart")); + } + + @Test + public void shouldAddNoButtons() { + final KeyboardRow keyboardRow = new KeyboardRow(); + keyboardRow.addAll(new ArrayList()); + assertTrue(keyboardRow.isEmpty()); + } + +}