Sha256: d0c5e46065f7f994a004455d2f16c0f65d052eb9fd57052efcdf28968ae3a0e8

Contents?: true

Size: 1.27 KB

Versions: 1

Compression:

Stored size: 1.27 KB

Contents

# frozen_string_literal: true

require "rails_helper"

RSpec.describe "Backend - Users (HTML)", type: :feature do
  describe "updating" do
    before { stub_authorization! }

    describe "with valid data" do
      it "returns successfully" do
        create(:user, username: "amazing")

        visit "/backend/users/amazing/edit"

        fill_in "Username", with: "grace"
        click_button "Update User"

        expect(page).to have_content("User was successfully updated.")
      end
    end

    describe "with invalid data" do
      before do
        create(:user, username: "amazing", email: "amazing@example.com")
        create(:user, username: "grace", email: "grace@example.com")
      end

      it "fails with used email" do
        visit "/backend/users/amazing/edit"

        fill_in "Email", with: "grace@example.com"
        click_button "Update User"

        expect(page.find(".form-group.user_email"))
          .to have_content("Email has already been taken")
      end

      it "fails with used username" do
        visit "/backend/users/amazing/edit"

        fill_in "Username", with: "grace"
        click_button "Update User"

        expect(page.find(".form-group.user_username"))
          .to have_content("Username has already been taken")
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
archangel-0.4.0 spec/features/backend/users/update_spec.rb