コード例 #1
0
 /// <summary>
 /// Click, Clear and Input Text to Reviewer Name Input on page
 /// Uses Fluent Interface so you can use page again
 /// </summary>
 /// <param name="productReview">Data that represents reveiw in IProduct Review fromat</param>
 /// <returns>ProductPageReviewLogic page</returns>
 public ProductPageReviewLogic ClickClearAndInputToReviewerNameInput(IProductReview productReview)
 {
     ProductPageReview.ClickOnReviewerNameInput();
     ProductPageReview.ClearReviewerNameInput();
     ProductPageReview.InputTextToReviewerNameInput(productReview);
     return(this);
 }
コード例 #2
0
        /// <summary>
        /// Checks if data on page is equal to some obj
        /// </summary>
        /// <param name="obj">Can be IProductReview or ReviewItem,  represents Review that will be checked to equals</param>
        /// <returns>True is two reviews data are equal and false if not</returns>
        public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return(false);
            }
            else if (obj is IProductReview)
            {
                IProductReview productReview = obj as IProductReview;

                return(GetTextFomProductNameInput().Equals(productReview.GetProductName()) &&
                       GetTextFomReviewerNameInput().Equals(productReview.GetReviewerName()) &&
                       GetDateFomReviewDateInput().Equals(productReview.GetDate()) &&
                       GetSelectedRating().Equals(productReview.GetRating()));
            }
            else if (obj is ReviewItem)
            {
                ReviewItem productReview = obj as ReviewItem;

                return(GetTextFomProductNameInput().Equals(productReview.GetProductName()) &&
                       GetTextFomReviewerNameInput().Equals(productReview.GetReviewerName()) &&
                       GetDateFomReviewDateInput().Equals(productReview.GetReviewDate()) &&
                       GetSelectedRating().Equals(productReview.GetReviewRaiting()));
            }
            else
            {
                return(false);
            }
        }
コード例 #3
0
ファイル: Member.cs プロジェクト: Abnertd/public
    public Member()
    {
        Response    = System.Web.HttpContext.Current.Response;
        Request     = System.Web.HttpContext.Current.Request;
        Server      = System.Web.HttpContext.Current.Server;
        Session     = System.Web.HttpContext.Current.Session;
        Application = System.Web.HttpContext.Current.Application;

        tools         = ToolsFactory.CreateTools();
        MyMember      = MemberFactory.CreateMember();
        Mygrade       = MemberGradeFactory.CreateMemberGrade();
        MyMemLog      = MemberLogFactory.CreateMemberLog();
        encrypt       = EncryptFactory.CreateEncrypt();
        MyConsumption = MemberConsumptionFactory.CreateMemberConsumption();
        MyFavor       = MemberFavoritesFactory.CreateMemberFavorites();
        MyProduct     = ProductFactory.CreateProduct();
        MyPackage     = PackageFactory.CreatePackage();
        MyReview      = ProductReviewFactory.CreateProductReview();
        MyFeedback    = FeedBackFactory.CreateFeedBack();
        MyAddr        = MemberAddressFactory.CreateMemberAddress();
        MyCart        = OrdersGoodsTmpFactory.CreateOrdersGoodsTmp();
        MyCoupon      = PromotionFavorCouponFactory.CreatePromotionFavorCoupon();
        // MyEmail = U_EmailNotifyRequestFactory.CreateU_EmailNotifyRequest();
        MyAccountLog = MemberAccountLogFactory.CreateMemberAccountLog();
        MyShop       = SupplierShopFactory.CreateSupplierShop();

        pageurl = new PageURL(int.Parse(Application["Static_IsEnable"].ToString()));
    }
コード例 #4
0
        public void TestCase649AddReviewTest(IProductReview review)
        {
            Application.Get().Browser.OpenUrl(URL);

            HomePage homePage;

            Assert.DoesNotThrow(() => { homePage = new HomePage(); },
                                "Step 1 Failed: Not home page");

            List <ProductItem> searchPage = new SearchMethods()
                                            .Search(review.GetProductName())
                                            .GetListProduct();

            Assert.True(searchPage.Any(),
                        "Step 3 Failed: No search results");

            ProductPageLogic productPage = searchPage
                                           .FirstOrDefault(x => x.GetTextFromProductName() == review.GetProductName())
                                           .ClickProductName();

            Assert.True(productPage.ProductPage.IsProductPageOf(review),
                        $"Step 4 Failed: Not {review.GetProductName()} product page");

            ProductPageReviewLogic productReviewPage = productPage.ProductPage.ClickWriteReviewLink();

            Assert.True(productReviewPage.ProductPageReview.IsReviewPage(),
                        "Step 5 Failed: Not reviews page");

            SuccessfullyAddedReviewPage addedReview = productReviewPage.InputValidReviewAndClickOnAddReviewButton(review);

            Assert.AreEqual(addedReview.GetTextFromSuccessAllert(), REVIEW_ADDED_ALERT_TEXT,
                            "Step 6 Failed: " + REVIEW_ADDED_ALERT_TEXT + " message not appeared");
            TestCase649 = true;
        }
コード例 #5
0
        public void TestCase670AproveReviewTest(IProductReview review, IUser user)
        {
            Assert.IsTrue(TestCase649,
                          "Blocked. Preconditions fail: add review test failed");

            Application.Get().Browser.OpenUrl(ADMIN_URL);

            LoginPageLogic loginPage = new LoginPageLogic();

            Assert.True(loginPage.LoginPage.IsLoginPage(),
                        "Step 1 Failed: Not login page");

            AdminPageLogic homePage = loginPage.InputValidUserAndLogin(user);

            Assert.AreEqual(homePage.Header.GetTextFromCurnetPageLable(), ADMIN_HOME_PAGE_NAME,
                            "Step 2 Failed: Not admin home page");
            Catalog catalog = homePage.Navigation.ClickOnCatalogLink();

            ReviewsPageLogic reviewsPage = catalog.ClickOnReviewLink();

            Assert.True(reviewsPage.ReviewsPage.IsReviewsPage(),
                        "Step 3 Failed: Not reviews page");

            EditReviewPageLogic page2 = reviewsPage.EditReviewThatEqualsTo(review);

            Assert.True(page2.EditReviewPage.IsEditReviewPage(),
                        "Step 4 Failed: Not edit review page");

            ReviewsPageSuccessAllert successfullyModifiedReview = page2.EnableReview();

            Assert.True(successfullyModifiedReview.IsReviewModified(),
                        "Step 5 Failed: Review wasn't approved");
            TestCase670 = true;
        }
コード例 #6
0
        public void TestCase704VerifyInvalidTextMessage(IProductReview validReview, IProductReview invalidReview)
        {
            Application.Get().Browser.OpenUrl(URL);

            HomePage homePage;

            Assert.DoesNotThrow(() => { homePage = new HomePage(); },
                                "Step 1 Failed: Not home page");

            List <ProductItem> searchPage = new SearchMethods()
                                            .Search(validReview.GetProductName())
                                            .GetListProduct();

            Assert.True(searchPage.Any(),
                        "Step 3 Failed: No search results");

            ProductPageLogic productPage = searchPage
                                           .FirstOrDefault(x => x.GetTextFromProductName() == validReview.GetProductName())
                                           .ClickProductName();

            Assert.True(productPage.ProductPage.IsProductPageOf(validReview),
                        $"Step 4 Failed: Not {validReview.GetProductName()} product page");

            ProductPageReviewLogic productReviewPage = productPage.ProductPage.ClickWriteReviewLink();

            Assert.True(productReviewPage.ProductPageReview.IsReviewPage(),
                        "Step 5 Failed: Not reviews page");

            UnsuccessfullyAddedReviewPage emptyReviewTextAlertPage = productReviewPage.InputReviewWithInvalidReviewTextAndClickOnAddReviewButton(validReview, invalidReview);

            Assert.AreEqual(emptyReviewTextAlertPage.GetTextFromWarningAlert(), INVALID_REVIEW_TEXT_ALERT_TEXT,
                            "Step 7 Failed: " + INVALID_REVIEW_TEXT_ALERT_TEXT + " message not appeared");
        }
コード例 #7
0
        /// <summary>
        /// Checks if review data is equal to another. Support IProductReview or ReviewItem
        /// </summary>
        /// <param name="obj">Can be IProductReview or ReviewItem</param>
        /// <returns>true if review data equals to obj data</returns>
        public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return(false);
            }
            else if (obj is IProductReview)
            {
                IProductReview productReview = obj as IProductReview;

                return(this.GetProductName().Equals(productReview.GetProductName()) &&
                       this.GetReviewerName().Equals(productReview.GetReviewerName()) &&
                       this.GetReviewDate().Equals(productReview.GetDate()) &&
                       this.GetReviewRaiting().Equals(productReview.GetRating()));
            }
            else if (obj is ReviewItem)
            {
                ReviewItem productReview = obj as ReviewItem;

                return(this.GetProductName().Equals(productReview.GetProductName()) &&
                       this.GetReviewerName().Equals(productReview.GetReviewerName()) &&
                       this.GetReviewDate().Equals(productReview.GetReviewDate()) &&
                       this.GetReviewRaiting().Equals(productReview.GetReviewRaiting()));
            }
            else
            {
                return(false);
            }
        }
コード例 #8
0
 /// <summary>
 /// Click, Clear and Input Text to Reviewer Name Input on page
 /// Click, Clear and Input Text to Review Text Input on page
 /// Select rating
 /// Click on add review buuton
 /// </summary>
 /// <param name="productReview">Valid data that represents reveiw in IProduct Review fromat</param>
 /// <returns>SuccessfullyAddedReviewPage page</returns>
 public SuccessfullyAddedReviewPage InputValidReviewAndClickOnAddReviewButton(IProductReview productReview)
 {
     ClickClearAndInputToReviewerNameInput(productReview);
     ClickClearAndInputToReviewTextInput(productReview);
     ProductPageReview.SelectRating(productReview);
     ProductPageReview.ClickOnAddReviewButton();
     return(new SuccessfullyAddedReviewPage());
 }
コード例 #9
0
 /// <summary>
 /// Deletes all review on the page that equals to some review
 /// </summary>
 /// <param name="productReview">Review data in IProductReview format</param>
 /// <returns>ReviewsPageSuccessAllert page</returns>
 public ReviewsPageSuccessAllert DeleteAllReviewsThatEqualsTo(IProductReview productReview)
 {
     foreach (ReviewItem item in ReviewsPage.GetReviewsListIfAnyExists().Where(x => x.Equals(productReview)))
     {
         item.SelectReview();
     }
     ReviewsPage.DeleteReview();
     return(new ReviewsPageSuccessAllert());
 }
コード例 #10
0
ファイル: EditReviewPageLogic.cs プロジェクト: orest77/Test
 /// <summary>
 /// Eneble review if it is equalt to another
 /// </summary>
 /// <param name="productReview">Review data in IProductReview format</param>
 /// <returns>ReviewsPageSuccessAllert page if review equals and null if not</returns>
 public ReviewsPageSuccessAllert EnableReviewIfEqualsTo(IProductReview productReview)
 {
     if (EditReviewPage.Equals(productReview))
     {
         return(EnableReview());
     }
     else
     {
         return(null);
     }
 }
コード例 #11
0
        /// <summary>
        /// Open edit review page if these review is on page
        /// </summary>
        /// <param name="productReview">Review data in IProductReview format</param>
        /// <returns>EditReviewPageLogic page if review exist and null if not</returns>
        public EditReviewPageLogic EditReviewThatEqualsTo(IProductReview productReview)
        {
            ReviewItem tmp = ReviewsPage.GetReviewsListIfAnyExists().FirstOrDefault(x => x.Equals(productReview));

            if (tmp != null)
            {
                tmp.ClickOnEditLink();
                return(new EditReviewPageLogic());
            }
            else
            {
                return(null);
            }
        }
コード例 #12
0
ファイル: ProductReview.cs プロジェクト: Abnertd/public
    public ProductReview()
    {
        //初始化ASP.NET内置对象
        Response    = System.Web.HttpContext.Current.Response;
        Request     = System.Web.HttpContext.Current.Request;
        Server      = System.Web.HttpContext.Current.Server;
        Session     = System.Web.HttpContext.Current.Session;
        Application = System.Web.HttpContext.Current.Application;

        tools     = ToolsFactory.CreateTools();
        Myconfig  = ProductReviewConfigFactory.CreateProductReviewConfig();
        Myreview  = ProductReviewFactory.CreateProductReview();
        MyMem     = MemberFactory.CreateMember();
        Myproduct = ProductFactory.CreateProduct();
    }
コード例 #13
0
        public void TestCase672CheckReviewTest(IProductReview review)
        {
            Assert.IsTrue(TestCase649 && TestCase670,
                          "Blocked. Preconditions fail: add review test failed or approve review test failed");

            Application.Get().Browser.OpenUrl(URL);

            HomePage homePage;

            Assert.DoesNotThrow(() => { homePage = new HomePage(); },
                                "Step 1 Failed: Not home page");

            List <ProductItem> searchPage = new SearchMethods()
                                            .Search(review.GetProductName())
                                            .GetListProduct();

            Assert.True(searchPage.Any(),
                        "Step 3 Failed: No search results");

            ProductPageLogic productPage = searchPage
                                           .FirstOrDefault(x => x.GetTextFromProductName() == review.GetProductName())
                                           .ClickProductName();

            Assert.True(productPage.ProductPage.IsProductPageOf(review),
                        $"Step 4 Failed: Not {review.GetProductName()} product page");

            ProductPageReviewLogic productReviewPage = productPage.ProductPage.ClickWriteReviewLink();

            Assert.True(productReviewPage.ProductPageReview.IsReviewPage(),
                        "Step 5 Failed: Not reviews page");

            bool hasReview = productReviewPage.ProductPageReview.ReviewExistInListOfReview(review);

            Assert.True(hasReview,
                        "Step 6 Failed: Review not exist");
        }
コード例 #14
0
 /// <summary>
 /// Check is review exist in ReviewsList
 /// </summary>
 /// <param name="productReview">Data tha represent product review in IProductReview format</param>
 /// <returns>true if exist and false if not</returns>
 public bool ReviewExistInListOfReview(IProductReview productReview)
 {
     return(GetReviewsListInAnyReviewExist().Where(x => x.Equals(productReview)).Any());
 }
コード例 #15
0
 /// <param name="productReview">Data tha represent product review in IProductReview format</param>
 public void SelectRating(IProductReview productReview)
 {
     RatingInputList.FirstOrDefault(x => Convert.ToInt32(x.GetAttribute("value")) == productReview.GetRating().ToInt()).Click();
 }
コード例 #16
0
 /// <summary>
 /// Inputs text to Review Text Input
 /// </summary>
 /// <param name="productReview">Data tha represent product review in IProductReview format</param>
 public void InputTextToReviewInput(IProductReview productReview)
 {
     ReviewTextInput.SendKeys(productReview.GetReviewText());
 }
コード例 #17
0
 /// <summary>
 /// Inputs text to Reviewr Name Input
 /// </summary>
 /// <param name="productReview">Data tha represent product review in IProductReview format</param>
 public void InputTextToReviewerNameInput(IProductReview productReview)
 {
     ReviewerNameInput.SendKeys(productReview.GetReviewerName());
 }
コード例 #18
0
ファイル: ProductPage.cs プロジェクト: orest77/Test
 /// <summary>
 /// Check is it product page of specific product
 /// </summary>
 /// <param name="productReview">Produc review in IProductReview format</param>
 /// <returns>True if product name equals and false if not</returns>
 public bool IsProductPageOf(IProductReview productReview)
 {
     return(GetTextFromProductName().Equals(productReview.GetProductName()));
 }
コード例 #19
0
 /// <summary>
 /// Click, Clear and Input valid Text to Review Name Input on page
 /// Click, Clear and Input invalid Text to Review Text Input on page
 /// Select valid rating
 /// Click on add review buuton
 /// </summary>
 /// <param name="validReview">Valid data that represents reveiw in IProduct Review fromat</param>
 /// <param name="invalidReview">Invalid data that represents reveiw in IProduct Review fromat</param>
 /// <returns>UnsuccessfullyAddedReviewPage page</returns>
 public UnsuccessfullyAddedReviewPage InputReviewWithInvalidReviewTextAndClickOnAddReviewButton(IProductReview validReview, IProductReview invalidReview)
 {
     ClickClearAndInputToReviewerNameInput(validReview);
     ClickClearAndInputToReviewTextInput(invalidReview);
     ProductPageReview.SelectRating(validReview);
     ProductPageReview.ClickOnAddReviewButton();
     return(new UnsuccessfullyAddedReviewPage());
 }
コード例 #20
0
 /// <summary>
 /// Click, Clear and Input Text to Reviewer Name Input on page
 /// Click, Clear and Input Text to Review Text Input on page
 /// Click on add review buuton
 /// </summary>
 /// <param name="productReview">Data that represents reveiw in IProduct Review fromat</param>
 /// <returns>UnsuccessfullyAddedReviewPage page</returns>
 public UnsuccessfullyAddedReviewPage InputReviewWithoutRatingAndClickOnAddReviewButton(IProductReview productReview)
 {
     ClickClearAndInputToReviewerNameInput(productReview);
     ClickClearAndInputToReviewTextInput(productReview);
     ProductPageReview.ClickOnAddReviewButton();
     return(new UnsuccessfullyAddedReviewPage());
 }