How to use hasText method of org.fluentlenium.assertj.custom.FluentListAssert class

Best FluentLenium code snippet using org.fluentlenium.assertj.custom.FluentListAssert.hasText

Source:FluentListAssertTest.java Github

copy

Full Screen

...24 }25 @Test26 public void testHasTextOk() {27 when(fluentList.texts()).thenReturn(singletonList("some text"));28 listAssert.hasText("some text");29 }30 @Test(expectedExceptions = AssertionError.class)31 public void testHasTextKo() {32 when(fluentList.texts()).thenReturn(Lists.newArrayList("some text", "other text"));33 listAssert.hasText("absent text");34 }35 @Test36 public void hasTextMatchingOk() {37 when(fluentList.texts()).thenReturn(Lists.newArrayList("Pharmacy", "Hospital"));38 listAssert.hasTextMatching("Pha\\w+cy");39 }40 @Test(expectedExceptions = AssertionError.class)41 public void hasTextMatchingKo() {42 when(fluentList.texts()).thenReturn(Lists.newArrayList("Pharmacy", "Hospital"));43 listAssert.hasTextMatching("Pha\\w+cy\\8");44 }45 @Test46 public void testHasNotTextOk() {47 when(fluentList.texts()).thenReturn(singletonList("other text"));48 listAssert.hasNotText("some text");49 }50 @Test(expectedExceptions = AssertionError.class)51 public void testHasNotTextKo() {52 when(fluentList.texts()).thenReturn(Lists.newArrayList("some text", "other text"));53 listAssert.hasNotText("other text");54 }55 @Test56 public void testHasSizeOk() {57 when(fluentList.count()).thenReturn(7);58 listAssert.isNotEmpty();59 listAssert.hasSize(7);60 }61 @Test62 public void testHasSizeZeroOk() {63 when(fluentList.count()).thenReturn(0);64 listAssert.hasSize(0);65 listAssert.isEmpty();66 }67 @Test(expectedExceptions = AssertionError.class)68 public void testHasSizeZeroKo() {69 when(fluentList.count()).thenReturn(0);70 listAssert.hasSize(1);71 }72 @Test(expectedExceptions = AssertionError.class)73 public void testHasSizeEmptyKo() {74 when(fluentList.count()).thenReturn(1);75 listAssert.isEmpty();76 }77 @Test(expectedExceptions = AssertionError.class)78 public void testHasSizeNotEmptyKo() {79 when(fluentList.count()).thenReturn(0);80 listAssert.isNotEmpty();81 }82 @Test83 public void testHasSizeZeroInBuilder() {84 when(fluentList.count()).thenReturn(0);85 listAssert.hasSize().equalTo(0);86 }87 @Test88 public void testHasSizeNotEqualOk() {89 when(fluentList.count()).thenReturn(0);90 listAssert.hasSize().notEqualTo(1);91 }92 @Test(expectedExceptions = AssertionError.class)93 public void testHasSizeNotEqualKo() {94 when(fluentList.count()).thenReturn(0);95 listAssert.hasSize().notEqualTo(0);96 }97 @Test(expectedExceptions = AssertionError.class)98 public void testHasSizeKo() {99 when(fluentList.count()).thenReturn(7);100 listAssert.hasSize(5);101 }102 @Test103 public void testHasSizeLessThanOk() {104 when(fluentList.count()).thenReturn(7);105 listAssert.hasSize().lessThan(9);106 }107 @Test(expectedExceptions = AssertionError.class)108 public void testHasSizeLessThanKo() {109 when(fluentList.count()).thenReturn(7);110 listAssert.hasSize().lessThan(7);111 listAssert.hasSize().lessThan(6);112 }113 @Test114 public void testHasSizeLessThanOrEqualToOk() {115 when(fluentList.count()).thenReturn(7);116 listAssert.hasSize().lessThanOrEqualTo(7);117 listAssert.hasSize().lessThanOrEqualTo(8);118 }119 @Test(expectedExceptions = AssertionError.class)120 public void testHasSizeLessThanOrEqualToKo() {121 when(fluentList.count()).thenReturn(7);122 listAssert.hasSize().lessThanOrEqualTo(6);123 }124 @Test125 public void testHasSizeGreaterThanOk() {126 when(fluentList.count()).thenReturn(7);127 listAssert.hasSize().greaterThan(6);128 }129 @Test(expectedExceptions = AssertionError.class)130 public void testHasSizeGreaterThanKo() {131 when(fluentList.count()).thenReturn(7);132 listAssert.hasSize().greaterThan(7);133 listAssert.hasSize().greaterThan(8);134 }135 @Test136 public void testHasSizeGreaterThanOrEqualToOk() {137 when(fluentList.count()).thenReturn(7);138 listAssert.hasSize().greaterThanOrEqualTo(7);139 listAssert.hasSize().greaterThanOrEqualTo(6);140 }141 @Test(expectedExceptions = AssertionError.class)142 public void testHasSizeGreaterThanOrEqualToKo() {143 when(fluentList.count()).thenReturn(7);144 listAssert.hasSize().greaterThanOrEqualTo(8);145 }146 @Test147 public void testHasIdOk() {148 when(fluentList.ids()).thenReturn(singletonList("some-id"));149 listAssert.hasId("some-id");150 }151 @Test(expectedExceptions = AssertionError.class)152 public void testHasIdKo() {153 when(fluentList.ids()).thenReturn(singletonList("other-id"));154 listAssert.hasId("some-id");155 }156 @Test157 public void testHasValueOk() {158 when(fluentList.values()).thenReturn(Lists.newArrayList("1", "2", "3"));159 listAssert.hasValue("1");160 }161 @Test(expectedExceptions = AssertionError.class)162 public void testHasValueKo() {163 when(fluentList.values()).thenReturn(Lists.newArrayList("1", "2", "3"));164 listAssert.hasValue("4");165 }166 @Test167 public void testHasNameOk() {168 when(fluentList.names()).thenReturn(Lists.newArrayList("name-one", "name-two"));169 listAssert.hasName("name-one");170 }171 @Test(expectedExceptions = AssertionError.class)172 public void testHasNameKo() {173 when(fluentList.names()).thenReturn(Lists.newArrayList("name-one", "name-two"));174 listAssert.hasName("name-three");175 }176 @Test177 public void testHasTagNameOk() {178 when(fluentList.tagNames()).thenReturn(Lists.newArrayList("span", "div"));179 listAssert.hasTagName("span");180 }181 @Test(expectedExceptions = AssertionError.class)182 public void testHasTagNamedKo() {183 when(fluentList.tagNames()).thenReturn(Lists.newArrayList("span", "div"));184 listAssert.hasTagName("p");185 }186 @Test(expectedExceptions = AssertionError.class)187 public void testHasIdEmptyKo() {188 when(fluentList.ids()).thenReturn(emptyList());189 listAssert.hasId("some-id");190 }191 @Test192 public void testHasClassOk() {193 when(fluentList.attributes("class")).thenReturn(Lists.newArrayList("some-class", "unknown-class"));194 listAssert.hasClass("some-class");195 }196 @Test(expectedExceptions = AssertionError.class)197 public void testHasClassKo() {198 when(fluentList.attributes("class")).thenReturn(Lists.newArrayList("other-class", "unknown-class"));199 listAssert.hasClass("some-class");200 }201 @Test(expectedExceptions = AssertionError.class)202 public void testHasClassEmptyKo() {203 when(fluentList.attributes("class")).thenReturn(emptyList());204 listAssert.hasClass("some-class");205 }206 @Test(expectedExceptions = AssertionError.class)207 public void testSubstringKo() {208 when(fluentList.attributes("class")).thenReturn(singletonList("yolokitten"));209 listAssert.hasClass("yolo");210 }211 @Test212 public void testHasMultipleClassesOk() {213 when(fluentList.attributes("class")).thenReturn(singletonList("yolokitten mark"));214 listAssert.hasClass("mark");215 }216 @Test217 public void testHasMultipleClassesOkBanana() {218 when(fluentList.attributes("class")).thenReturn(Arrays.asList("beta product", "alpha male"));219 listAssert.hasClass("male");220 }221 @Test222 public void testHasDimensionOk() {223 Dimension dimensionOne = new Dimension(1, 2);224 Dimension dimensionTwo = new Dimension(3, 4);225 when(fluentList.dimensions()).thenReturn(Lists.newArrayList(dimensionOne, dimensionTwo));226 listAssert.hasDimension(new Dimension(1, 2));227 }228 @Test(expectedExceptions = AssertionError.class)229 public void testHasDimensionKo() {230 Dimension dimensionOne = new Dimension(1, 2);231 Dimension dimensionTwo = new Dimension(3, 4);232 when(fluentList.dimensions()).thenReturn(Lists.newArrayList(dimensionOne, dimensionTwo));233 listAssert.hasDimension(new Dimension(5, 6));234 }235 @Test236 public void testHasAttributeValueOk() {237 when(fluentList.attributes("name")).thenReturn(Lists.newArrayList("name-one", "name-two"));238 listAssert.hasAttributeValue("name", "name-one");239 }240 @Test(expectedExceptions = AssertionError.class)241 public void testHasAttributeValueKo() {242 when(fluentList.attributes("name")).thenReturn(Lists.newArrayList("name-one", "name-two"));243 listAssert.hasAttributeValue("name", "name-three");244 }245 @Test246 public void emptyListErrorMessage() {247 when(fluentList.texts()).thenReturn(emptyList());248 assertThatThrownBy(() -> listAssert.hasText("John"))249 .isInstanceOf(AssertionError.class)250 .hasMessageContaining("List is empty. Please make sure you use correct selector.");251 }252}...

Full Screen

Full Screen

Source:FluentListAssert.java Github

copy

Full Screen

...31 public FluentListSizeBuilder hasSize() {32 return new FluentListSizeBuilder(actual.count(), this);33 }34 @Override35 public FluentListAssert hasText(String textToFind) {36 List<String> actualTexts = actual.texts();37 checkListEmptiness(actualTexts);38 if (actualTexts.stream().noneMatch(text -> text.contains(textToFind))) {39 failWithMessage("No selected elements contains text: " + textToFind40 + ". Actual texts found: " + actualTexts);41 }42 return this;43 }44 @Override45 public FluentListAssert hasTextMatching(String regexToBeMatched) {46 List<String> actualTexts = actual.texts();47 checkListEmptiness(actualTexts);48 if (actualTexts.stream().noneMatch(text -> text.matches(regexToBeMatched))) {49 failWithMessage("No selected elements contains text matching: " + regexToBeMatched50 + ". Actual texts found: " + actualTexts);51 }52 return this;53 }54 @Override55 public FluentListAssert hasNotText(String textToFind) {56 List<String> actualTexts = actual.texts();57 checkListEmptiness(actualTexts);58 for (String text : actualTexts) {59 if (text.contains(textToFind)) {...

Full Screen

Full Screen

hasText

Using AI Code Generation

copy

Full Screen

1package org.fluentlenium.assertj.custom;2import org.fluentlenium.assertj.FluentListAssert;3import org.junit.Test;4import org.junit.runner.RunWith;5import org.openqa.selenium.WebElement;6import org.openqa.selenium.support.FindBy;7import org.openqa.selenium.support.How;8import org.openqa.selenium.support.ui.Select;9import org.springframework.boot.test.context.SpringBootTest;10import org.springframework.test.context.junit4.SpringRunner;11import java.util.List;12import static org.assertj.core.api.Assertions.assertThat;13import static org.fluentlenium.assertj.FluentLeniumAssertions.assertThat;14@RunWith(SpringRunner.class)15public class FluentListAssertTest {16 @FindBy(how = How.CSS, using = "select")17 private List<WebElement> selectList;18 public void testHasText() {19 assertThat(selectList).hasText("Select an option");20 }21}22package org.fluentlenium.assertj.custom;23import org.fluentlenium.assertj.FluentListAssert;24import org.junit.Test;25import org.junit.runner.RunWith;26import org.openqa.selenium.WebElement;27import org.openqa.selenium.support.FindBy;28import org.openqa.selenium.support.How;29import org.openqa.selenium.support.ui.Select;30import org.springframework.boot.test.context.SpringBootTest;31import org.springframework.test.context.junit4.SpringRunner;32import java.util.List;33import static org.assertj.core.api.Assertions.assertThat;34import static org.fluentlenium.assertj.FluentLeniumAssertions.assertThat;35@RunWith(SpringRunner.class)36public class FluentListAssertTest {37 @FindBy(how = How.CSS, using = "select")38 private List<WebElement> selectList;39 public void testHasValue() {40 assertThat(selectList).hasValue("option1");41 }42}43package org.fluentlenium.assertj.custom;44import org.fluentlenium.assertj.FluentListAssert;45import org.junit.Test;46import org.junit.runner.RunWith;47import org.openqa.selenium.WebElement;48import org.openqa.selenium.support.FindBy;49import org.openqa.selenium.support.How;50import org.openqa.selenium.support.ui.Select;51import org.springframework.boot.test.context.SpringBootTest;52import org.springframework.test.context.junit4.SpringRunner;53import java.util.List;54import static org.assertj.core.api.Assertions.assertThat;55import static org.fluentlenium.assertj

Full Screen

Full Screen

hasText

Using AI Code Generation

copy

Full Screen

1package com.mycompany.app;2import org.fluentlenium.assertj.custom.FluentListAssert;3import org.fluentlenium.core.FluentPage;4import org.fluentlenium.core.annotation.Page;5import org.junit.Test;6import org.junit.runner.RunWith;7import org.openqa.selenium.WebDriver;8import org.openqa.selenium.htmlunit.HtmlUnitDriver;9import org.springframework.beans.factory.annotation.Autowired;10import org.springframework.boot.test.context.SpringBootTest;11import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;12import org.springframework.test.context.junit4.SpringRunner;13import static org.assertj.core.api.Assertions.assertThat;14import static org.fluentlenium.assertj.FluentLeniumAssertions.assertThat;15@RunWith(SpringRunner.class)16@SpringBootTest(webEnvironment=WebEnvironment.RANDOM_PORT)17public class AppTest {18 private WebDriver webDriver;19 private IndexPage indexPage;20 public void test() {21 indexPage.go();22 assertThat(indexPage.getLinks()).hasText("Google");23 }24}25package com.mycompany.app;26import org.fluentlenium.assertj.custom.FluentListAssert;27import org.fluentlenium.core.FluentPage;28import org.fluentlenium.core.annotation.Page;29import org.junit.Test;30import org.junit.runner.RunWith;31import org.openqa.selenium.WebDriver;32import org.openqa.selenium.htmlunit.HtmlUnitDriver;33import org.springframework.beans.factory.annotation.Autowired;34import org.springframework.boot.test.context.SpringBootTest;35import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;36import org.springframework.test.context.junit4.SpringRunner;37import static org.assertj.core.api.Assertions.assertThat;38import static org.fluentlenium.assertj.FluentLeniumAssertions.assertThat;39@RunWith(SpringRunner.class)40@SpringBootTest(webEnvironment=WebEnvironment.RANDOM_PORT)41public class AppTest {42 private WebDriver webDriver;43 private IndexPage indexPage;44 public void test() {45 indexPage.go();46 assertThat(indexPage.getLinks()).hasText("Google");47 }48}49package com.mycompany.app;50import org.fluentlenium.assertj.custom.FluentListAssert;51import org.fluentlenium.core.FluentPage;52import org.fluentlenium.core.annotation.Page;53import org.junit.Test;54import

Full Screen

Full Screen

hasText

Using AI Code Generation

copy

Full Screen

1package com.qa.test;2import static org.fluentlenium.assertj.FluentLeniumAssertions.assertThat;3import org.fluentlenium.adapter.junit.FluentTest;4import org.fluentlenium.core.annotation.Page;5import org.junit.Test;6import org.junit.runner.RunWith;7import org.openqa.selenium.WebDriver;8import org.openqa.selenium.chrome.ChromeDriver;9import org.openqa.selenium.chrome.ChromeOptions;10import org.openqa.selenium.firefox.FirefoxDriver;11import org.openqa.selenium.firefox.FirefoxOptions;12import org.openqa.selenium.remote.RemoteWebDriver;13import org.springframework.boot.test.context.SpringBootTest;14import org.springframework.test.context.junit4.SpringRunner;15import com.qa.pages.LoginPage;16@RunWith(SpringRunner.class)17public class TestLogin extends FluentTest {18 private LoginPage loginPage;19 public WebDriver getDefaultDriver() {20 }21 public void test() {22 goTo(loginPage);23 assertThat(loginPage.getHeadings()).hasText("Login");24 }25}26package com.qa.pages;27import org.fluentlenium.core.FluentPage;28import org.fluentlenium.core.annotation.PageUrl;29import org.fluentlenium.core.annotation.Text;30import org.fluentlenium.core.domain.FluentList;31import org.openqa.selenium.support.FindBy;32public class LoginPage extends FluentPage {33 @FindBy(css = "h1")34 private FluentList<FluentList> headings;35 private String heading;36 public FluentList<FluentList> getHeadings() {37 return headings;38 }39 public void setHeadings(FluentList<FluentList> headings) {40 this.headings = headings;41 }42 public String getHeading() {43 return heading;44 }45 public void setHeading(String heading) {46 this.heading = heading;47 }48}

Full Screen

Full Screen

hasText

Using AI Code Generation

copy

Full Screen

1import java.util.Scanner;2import org.fluentlenium.assertj.custom.FluentListAssert;3import org.fluentlenium.core.annotation.Page;4import org.fluentlenium.core.hook.wait.Wait;5import org.junit.Test;6import org.junit.runner.RunWith;7import org.openqa.selenium.By;8import org.openqa.selenium.WebElement;9import org.openqa.selenium.support.FindBy;10import org.springframework.beans.factory.annotation.Autowired;11import org.springframework.boot.test.context.SpringBootTest;12import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;13import org.springframework.boot.test.web.client.TestRestTemplate;14import org.springframework.test.context.junit4.SpringRunner;15import org.springframework.test.context.web.WebAppConfiguration;16import com.example.demo.DemoApplication;17import com.example.demo.model.Customer;18import com.example.demo.model.CustomerRepository;19import com.example.demo.page.CustomerPage;20import com.example.demo.page.CustomerPage.Form;21import com.example.demo.page.CustomerPage.List;22import static org.assertj.core.api.Assertions.assertThat;23@RunWith(SpringRunner.class)24@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = DemoApplication.class)25public class CustomerPageTest {26 private CustomerPage page;27 private TestRestTemplate restTemplate;28 private CustomerRepository repository;29 public void test() {30 List<WebElement> list = page.go().getList();31 FluentListAssert.assertThat(list).hasText();32 WebElement first = list.get(0);33 assertThat(first.getText()).isNotEmpty();34 String id = first.findElement(By.tagName("a")).getText();35 String name = first.findElement(By.tagName("span")).getText();36 page.goToCustomerPage(id);37 assertThat(page.getCustomerName()).isEqualTo(name);38 page.goToEditPage();39 assertThat(page.getFormName()).isEqualTo(name);40 String newName = "New Name";41 page.getForm().fillName(newName);

Full Screen

Full Screen

hasText

Using AI Code Generation

copy

Full Screen

1FluentListAssert.assertThat(elements).hasText("Hello World");2FluentWebElementAssert.assertThat(element).hasText("Hello World");3FluentListAssert.assertThat(elements).hasText("Hello World", "Hello World");4FluentWebElementAssert.assertThat(element).hasText("Hello World", "Hello World");5FluentListAssert.assertThat(elements).hasText("Hello World", "Hello World", "Hello World");6FluentWebElementAssert.assertThat(element).hasText("Hello World", "Hello World", "Hello World");7FluentListAssert.assertThat(elements).hasText("Hello World", "Hello World", "Hello World", "Hello World");8FluentWebElementAssert.assertThat(element).hasText("Hello World", "Hello World", "Hello World", "Hello World");9FluentListAssert.assertThat(elements).hasText("Hello World", "Hello World", "Hello World", "Hello World", "Hello World");10FluentWebElementAssert.assertThat(element).hasText("Hello World", "Hello World", "Hello World", "Hello World", "Hello World");11FluentListAssert.assertThat(elements).hasText("Hello World", "Hello World", "Hello World", "Hello World", "Hello World", "Hello World");

Full Screen

Full Screen

hasText

Using AI Code Generation

copy

Full Screen

1FluentListAssert.assertThat($(By.id("id1"))).hasText("Text");2FluentWebElementAssert.assertThat($(By.id("id1"))).hasText("Text");3FluentListAssert.assertThat($(By.id("id1"))).hasText("Text");4FluentWebElementAssert.assertThat($(By.id("id1"))).hasText("Text");5FluentListAssert.assertThat($(By.id("id1"))).hasText("Text");6FluentWebElementAssert.assertThat($(By.id("id1"))).hasText("Text");7FluentListAssert.assertThat($(By.id("id1"))).hasText("Text");8FluentWebElementAssert.assertThat($(By.id("id1"))).hasText("Text");9FluentListAssert.assertThat($(By.id("id1"))).hasText("Text");10FluentWebElementAssert.assertThat($(By.id("id1"))).hasText("Text");11FluentListAssert.assertThat($(By.id("id1"))).hasText("Text");12FluentWebElementAssert.assertThat($(By.id("id1"))).hasText("Text");13FluentListAssert.assertThat($(By.id("id1"))).hasText("Text");

Full Screen

Full Screen

hasText

Using AI Code Generation

copy

Full Screen

1public class 4 {2 public void test() {3 FluentDriver driver = FluentDriverCreator.getFluentDriver();4 page.go();5 FluentListAssert.assertThat(page.find(".g")).hasText("FluentLenium");6 }7}8public class 5 {9 public void test() {10 FluentDriver driver = FluentDriverCreator.getFluentDriver();11 page.go();12 FluentListAssert.assertThat(page.find(".g")).hasText("FluentLenium");13 }14}15public class 6 {16 public void test() {17 FluentDriver driver = FluentDriverCreator.getFluentDriver();18 page.go();19 FluentListAssert.assertThat(page.find(".g")).hasText("FluentLenium");20 }21}22public class 7 {23 public void test() {24 FluentDriver driver = FluentDriverCreator.getFluentDriver();25 page.go();26 FluentListAssert.assertThat(page.find(".g")).hasText("FluentLenium");27 }28}29public class 8 {30 public void test() {31 FluentDriver driver = FluentDriverCreator.getFluentDriver();32 page.go();33 FluentListAssert.assertThat(page.find(".g")).hasText("FluentLenium");34 }35}36public class 9 {

Full Screen

Full Screen

hasText

Using AI Code Generation

copy

Full Screen

1public class 4 {2 public void testHasText() {3 FluentDriver driver = new FluentDriver();4 FluentList list = driver.find("#list");5 list.hasText("text");6 }7}8org.fluentlenium.assertj.custom.FluentListAssert hasText(java.lang.String) in org.fluentlenium.assertj.custom.FluentListAssert cannot be applied to (java.lang.String)9public class 5 {10 public void testHasText() {11 FluentDriver driver = new FluentDriver();12 FluentList list = driver.find("#list");13 list.hasText("text");14 }15}16org.fluentlenium.assertj.custom.FluentListAssert hasText(java.lang.String) in org.fluentlenium.assertj.custom.FluentListAssert cannot be applied to (java.lang.String)17public class 6 {18 public void testHasText() {19 FluentDriver driver = new FluentDriver();20 FluentList list = driver.find("#list");21 list.hasText("text");22 }23}24org.fluentlenium.assertj.custom.FluentListAssert hasText(java.lang.String) in org.fluentlenium.assertj.custom.FluentListAssert cannot be applied to (java.lang.String)25public class 7 {26 public void testHasText() {27 FluentDriver driver = new FluentDriver();28 FluentList list = driver.find("#list");29 list.hasText("text");30 }31}32org.fluentlenium.assertj.custom.FluentListAssert hasText(java.lang.String) in org.fluentlenium.assertj.custom.FluentListAssert cannot be applied to (java.lang.String)33public class 8 {34 public void testHasText() {35 FluentDriver driver = new FluentDriver();

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful