Sha256: 29e90fda1eb961497e6be6a607baa624975184f50a9f42aaa675c910dfe7c92b

Contents?: true

Size: 1.68 KB

Versions: 1

Compression:

Stored size: 1.68 KB

Contents

<%- if %w[selenium watir].include? automation -%>
# frozen_string_literal: true

require_relative '../helpers/spec_helper'
require_relative '../models/model_factory'
require_relative '../page_objects/pages/account_page'
require_relative '../page_objects/pages/login_page'

describe 'Login' do
  subject(:header) { account_page.header.customer_name }

  let(:user) { ModelFactory.for('users')['registered user'] }
  let(:login_page) { LoginPage.new(<% if automation == 'watir' -%>browser<% else -%>driver<% end -%>) }
  let(:account_page) { AccountPage.new(<% if automation == 'watir' -%>browser<% else -%>driver<% end -%>) }

  before do
    login_page.visit
    login_page.login(user['username'], password)
  end

  context 'with right credentials' do
    let(:password) { user['password'] }

    it 'can successfully log in' do
    <%- if visual_automation == true -%>
      check_page account_page
    <%- else -%>
      expect(header).to eq "Welcome back #{user['name']}"
    <%- end -%>
    end
  end

  context 'with wrong credentials' do
    let(:password) { 'wrongPassword' }

    it 'cannot log in' do
    <%- if visual_automation == true -%>
      check_page login_page
    <%- else -%>
      expect(header).to be_empty
    <%- end -%>
    end
  end
end
<%- else -%>
require_relative '../helpers/spec_helper'
require_relative '../page_objects/pages/home_page'
require_relative '../page_objects/pages/pdp_page'

class PdpSpec < BaseSpec
  describe 'PDP page' do

    let(:home_page) { HomePage.new(driver) }
    let(:pdp_page) { PdpPage.new(driver) }

    it 'shows add to cart button' do
      home_page.go_to_backpack_pdp
      expect(pdp_page.add_to_cart_text).to eq 'Add To Cart'
    end
  end
end
<%- end -%>

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ruby_raider-0.7.4 lib/generators/rspec/templates/spec.tt