Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
48d873f
4914_cardTestsRefRebased
MayaElf Nov 24, 2023
e370199
4914_cardTestsRefRebased1
MayaElf Nov 24, 2023
26462e0
4914_cardTestsRefRebased2
MayaElf Nov 24, 2023
40fd452
4914_cardTestsRefFooterAdded
MayaElf Nov 24, 2023
6c60157
4914_cardTestsRefAlignTestAdded
MayaElf Nov 27, 2023
f090fbe
4914_cardTestsRefAlignTestAdded2
MayaElf Nov 27, 2023
54ae13b
4914_cardTestsRefAlignTestAdded2
MayaElf Nov 27, 2023
83b0b3a
4914_cardTestsRefImageSizeAdded
MayaElf Nov 28, 2023
0a039d2
4914_cardTestsRefImageSizeAddedStyleFix
MayaElf Nov 28, 2023
eb1ff16
4914_cardRefacInterm1
MayaElf Dec 4, 2023
4275f4f
4914_cardRefacActions
MayaElf Dec 5, 2023
5256725
4914_cardRefacButtons
MayaElf Dec 5, 2023
43dff2b
4914_cardRefacFix1
MayaElf Dec 22, 2023
1356790
@JDIAction
Jan 12, 2024
952f02e
PR improvements
Jan 12, 2024
b280e2a
Merge branch 'angular_rework_development' into 4914_refactoringCardTests
Jan 15, 2024
9cc8455
fixes after merge with angular_rework_development
Jan 15, 2024
711be9b
checkstyle improvements
Jan 15, 2024
0ee187f
some PR improvements
Jan 17, 2024
ce4e5e1
PR improvements
Jan 19, 2024
a7264b8
PR improvements
Jan 26, 2024
05dc6c6
PR improvements
Jan 26, 2024
53cdaf0
PR improvements
Jan 30, 2024
3d058fc
PR improvements
Jan 30, 2024
41b2afc
PR improvements
Feb 1, 2024
59af6d6
Merge branch 'angular_rework_development' into 4914_refactoringCardTests
Feb 29, 2024
4b9dd26
DRAFT. New Card class
Feb 29, 2024
c2ace6b
DRAFT. New Card class
Feb 29, 2024
5d7f04a
DRAFT. New Card class
Feb 29, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import io.github.com.pages.InputPage;
import io.github.com.pages.ButtonTogglePage;
import io.github.com.pages.ButtonsPage;
import io.github.com.pages.CardPage;
import io.github.com.pages.CheckBoxPage;
import io.github.com.pages.DividerPage;
import io.github.com.pages.ProgressBarPage;
Expand Down Expand Up @@ -53,4 +54,7 @@ public class StaticSite {

@Url("slide_toggle")
public static SlideTogglePage slideTogglePage;

@Url("card")
public static CardPage cardPage;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package io.github.com.pages;

import com.epam.jdi.light.angular.elements.complex.Card;
import com.epam.jdi.light.elements.pageobjects.annotations.locators.UI;

public class CardPage extends NewAngularPage {
@UI("#simple-card")
public static Card simpleCard;

@UI("#example-card")
public static Card card;

@UI("#card-with-footer")
public static Card cardWithFooter;

@UI("#card-with-alignment-align-start")
public static Card cardAlignStartActions;

@UI("#card-with-alignment-align-end")
public static Card cardAlignEndActions;

@UI("#card-with-media-size-sm-image")
public static Card cardWithSmallImage;

@UI("#card-with-media-size-md-image")
public static Card cardWithMediumImage;

@UI("#card-with-media-size-lg-image")
public static Card cardWithLargeImage;

@UI("#card-with-media-size-xl-image")
public static Card cardWithExtraLargeImage;
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,61 +1,109 @@
package io.github.epam.angular.tests.elements.complex;

import io.github.epam.TestsInit;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Ignore;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

import static io.github.com.StaticSite.angularPage;
import static io.github.com.pages.sections.CardSection.card;
import static io.github.com.pages.sections.CardSection.simpleCard;
import static io.github.epam.site.steps.States.shouldBeLoggedIn;
import static com.epam.jdi.light.angular.elements.enums.CardImageSize.EXTRALARGE;
import static com.epam.jdi.light.angular.elements.enums.CardImageSize.LARGE;
import static com.epam.jdi.light.angular.elements.enums.CardImageSize.MEDIUM;
import static com.epam.jdi.light.angular.elements.enums.CardImageSize.SMALL;
import static com.jdiai.tools.Timer.waitCondition;
import static io.github.com.StaticSite.cardPage;
import static io.github.com.pages.CardPage.card;
import static io.github.com.pages.CardPage.cardAlignEndActions;
import static io.github.com.pages.CardPage.cardAlignStartActions;
import static io.github.com.pages.CardPage.cardWithExtraLargeImage;
import static io.github.com.pages.CardPage.cardWithFooter;
import static io.github.com.pages.CardPage.cardWithLargeImage;
import static io.github.com.pages.CardPage.cardWithMediumImage;
import static io.github.com.pages.CardPage.cardWithSmallImage;
import static io.github.com.pages.CardPage.simpleCard;


// TODO Move to the new page
@Ignore
public class CardTests extends TestsInit {
@BeforeMethod

private static final String IMAGE_SRC = "https://material.angular.io/assets/img/examples/shiba2.jpg";

@BeforeClass
public void before() {
shouldBeLoggedIn();
angularPage.shouldBeOpened();
cardPage.open();
waitCondition(() -> cardPage.isOpened());
cardPage.checkOpened();
}

@Test
@Test(description = "Test verifies that card is displayed")
public void displayedBasicCardTest() {
simpleCard.is().displayed();
card.is().displayed();
}

@Test
public void attributeCardTest() {
simpleCard.is().assertCardText("Simple card");
card.is().assertAltImageAttribute("Photo of a Shiba Inu");
card.is().assertSrcImageAttribute("https://material.angular.io/assets/img/examples/shiba2.jpg");
}
// @Test(description = "Test verifies card text and image")
// public void attributeCardTest() {
// card.has().altImageAttribute("Photo of a Shiba Inu");
// card.has().srcImageAttribute(IMAGE_SRC);
//
// cardWithSmallImage.has().headerImageWithSrcAttribute(IMAGE_SRC);
// cardWithMediumImage.has().headerImageWithSrcAttribute(IMAGE_SRC);
// cardWithLargeImage.has().headerImageWithSrcAttribute(IMAGE_SRC);
// cardWithExtraLargeImage.has().headerImageWithSrcAttribute(IMAGE_SRC);
// }

@Test
public void displayedCardTest() {
card.getHeader().is().displayed();
card.getHeaderText().is().displayed();
card.getAvatar().is().displayed();
card.getTitle().is().displayed();
card.getTitle().is().text("Shiba Inu");
card.getSubtitle().is().displayed();
card.getSubtitle().is().text("Dog Breed");
card.getImage().is().displayed();
card.getContent().is().displayed();
card.getContent().is().displayed();
}
// @Test(description = "Test verifies that elements of the card are displayed")
// public void displayedCardTest() {
// card.show();
// card.header().is().displayed();
// card.avatar().is().displayed();
// card.title().is().displayed();
// card.title().is().text("Shiba Inu");
// card.subtitle().is().displayed();
// card.subtitle().has().text("Dog Breed");
// card.bodyImage().is().displayed();
// card.content().is().displayed();
// card.actions().is().displayed();
// cardWithFooter.show();
// cardWithFooter.footer().is().displayed();
// cardWithFooter.actions().is().displayed();
// }

@Test
public void cardButtonsTest() {
card.is().assertNumberOfButtonsOnCard(2);
card.getButtonByNumber(1).is().text("LIKE");
card.getButtonByNumber(2).is().text("SHARE");
}
// @Test(description = "Test verifies number and text of card buttons")
// public void cardButtonsTest() {
// card.show();
// card.has().numberOfButtonsOnCard(2);
// card.buttonByNumber(1).has().text("LIKE");
// card.buttonByNumber(2).has().text("SHARE");
// }

@Test
public void cardButtonsClickTest() {
card.getButtonByText("LIKE").click();
card.getButtonByText("LIKE").has().cssClass("cdk-focused");
}
}
// @Test(description = "Test verifies that after click button becomes focused")
// public void cardButtonsClickTest() {
// card.buttonByText("LIKE").click();
// card.buttonByText("LIKE").has().cssClass("cdk-focused");
// }

// @Test(description = "Test verifies that align end and start actions position")
// public void alignPositionTest() {
// cardAlignEndActions.show();
// cardAlignEndActions.actions().is().displayed();
// cardAlignEndActions.has().alignEndActions();
// cardAlignStartActions.show();
// cardAlignStartActions.actions().is().displayed();
// cardAlignStartActions.has().alignStartActions();
// }

// @Test(description = "Test verifies image size of the card")
// public void sizeOfCardImageTest() {
// card.has().imageSize(320, 400);
//
// cardWithSmallImage.has().headerImageSize(SMALL);
// cardWithSmallImage.has().headerImageSize(80, 80);
//
// cardWithMediumImage.has().headerImageSize(MEDIUM);
// cardWithMediumImage.has().headerImageSize(112, 112);
//
// cardWithLargeImage.has().headerImageSize(LARGE);
// cardWithLargeImage.has().headerImageSize(152, 152);
//
// cardWithExtraLargeImage.has().headerImageSize(EXTRALARGE);
// cardWithExtraLargeImage.has().headerImageSize(240, 240);
// }
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,64 @@

import com.epam.jdi.light.angular.elements.complex.Card;
import com.epam.jdi.light.asserts.generic.UIAssert;
import com.epam.jdi.light.common.JDIAction;
import org.hamcrest.Matchers;

import static com.epam.jdi.light.asserts.core.SoftAssert.jdiAssert;

public class CardAssert extends UIAssert<CardAssert, Card> {
@JDIAction(value = "Assert that '{name}' has text '{0}'", isAssert = true)
public CardAssert assertCardText(String value) {
jdiAssert(element().getCardText().equals(value), Matchers.is(true), "ERROR MESSAGE IS REQUIRED");
return this;
}

@JDIAction(value = "Assert that '{name}' alt image attribute has text '{0}'", isAssert = true)
public CardAssert assertAltImageAttribute(String value) {
jdiAssert(element().getImage().getAttribute("alt").contains(value), Matchers.is(true), "ERROR MESSAGE IS REQUIRED");
return this;
}

@JDIAction(value = "Assert that '{name}' src image attribute has text '{0}'", isAssert = true)
public CardAssert assertSrcImageAttribute(String value) {
jdiAssert(element().getImage().getAttribute("src").contains(value), Matchers.is(true), "ERROR MESSAGE IS REQUIRED");
return this;
}

@JDIAction(value = "Assert that '{name}' has '{0}' buttons", isAssert = true)
public CardAssert assertNumberOfButtonsOnCard(int number) {
jdiAssert(element().getButtons().size() == number, Matchers.is(true), "ERROR MESSAGE IS REQUIRED");
return this;
}
// @JDIAction(value = "Assert that '{name}' alt image attribute has text '{0}'", isAssert = true)
// public CardAssert altImageAttribute(String value) {
// jdiAssert(element().bodyImage().alt().contains(value), Matchers.is(true), "ERROR MESSAGE IS REQUIRED");
// return this;
// }
//
// @JDIAction(value = "Assert that '{name}' src image attribute has text '{0}'", isAssert = true)
// public CardAssert srcImageAttribute(String value) {
// jdiAssert(element().bodyImage().src().contains(value), Matchers.is(true), "ERROR MESSAGE IS REQUIRED");
// return this;
// }
//
// @JDIAction(value = "Assert that '{name}' alt image attribute has text '{0}'", isAssert = true)
// public CardAssert headerImageWithSrcAttribute(String src) {
// jdiAssert(element().headerImage().src().contains(src), Matchers.is(true), "ERROR MESSAGE IS REQUIRED");
// return this;
// }
//
// @JDIAction(value = "Assert that '{name}' has '{0}' buttons", isAssert = true)
// public CardAssert numberOfButtonsOnCard(int number) {
// jdiAssert(element().actionButtons().size() == number, Matchers.is(true), "ERROR MESSAGE IS REQUIRED");
// return this;
// }
//
// @JDIAction("Assert that '{name}' has align end actions")
// public CardAssert alignEndActions() {
// jdiAssert(element().actionsEndAlign(), Matchers.is(true),
// "Card actions are in start align position");
// return this;
// }
//
// @JDIAction("Assert that '{name}' has align start actions")
// public CardAssert alignStartActions() {
// jdiAssert(element().actionsEndAlign(), Matchers.is(false),
// "Card actions are in end align position");
// return this;
// }
//
// @JDIAction("Assert that {name} has image with '{1}' height and '{2}' width")
// public CardAssert imageSize(int height, int width) {
// jdiAssert(element().bodyImage().height(), Matchers.equalTo(height));
// jdiAssert(element().bodyImage().width(), Matchers.equalTo(width));
// return this;
// }
//
// @JDIAction("Assert that {name} has header image with '{1}' height and '{2}' width")
// public CardAssert headerImageSize(int height, int width) {
// jdiAssert(element().headerImage().height(), Matchers.equalTo(height));
// jdiAssert(element().headerImage().width(), Matchers.equalTo(width));
// return this;
// }
//
// @JDIAction("Assert that {name} has image '{1}' size")
// public CardAssert headerImageSize(CardImageSize size) {
// jdiAssert(element().headerImageSize(), Matchers.is(size));
// return this;
// }
}
Loading