Sha256: f499d8b4c45027b3290dc367dbeeb868af0ebd1b9506c8028d101c1ead776fdb

Contents?: true

Size: 1.58 KB

Versions: 4

Compression:

Stored size: 1.58 KB

Contents

require 'rails_helper'

RSpec.describe "Unsakini::Users", type: :request do

  before(:all) do
    @user = create(:user)
  end

  describe "GET /unsakini/user/:id" do
    it "returns http unauthorized" do
      get unsakini_user_path(@user)
      expect(response).to have_http_status(:unauthorized)
    end
    it "returns current user" do
      get unsakini_user_path(@user), headers: auth_headers(@user)
      expect(response).to have_http_status(:ok)
      expect(response.body).to match_json_schema(:user)
      expect(response.body).to be_json_eql(serialize(@user))
    end
  end

  describe "GET /unsakini/users/search" do

    before(:all) do
      @user_2 = create(:user)
    end

    it "returns http unauthorized" do
      get unsakini_user_search_path, params: {email: @user_2.email}
      expect(response).to have_http_status(:unauthorized)
    end

    it "returns http not_found" do
      get unsakini_user_search_path, params: {email: "#{Faker::Crypto.md5}@gmail.com"}, headers: auth_headers(@user)
      expect(response).to have_http_status(:not_found)
    end

    it "returns http not_found if my email" do
      get unsakini_user_search_path, params: {email: @user.email}, headers: auth_headers(@user)
      expect(response).to have_http_status(:not_found)
    end

    it "returns single user with by email" do
      get unsakini_user_search_path, params: {email: @user_2.email}, headers: auth_headers(@user)
      expect(response).to have_http_status(:ok)
      expect(response.body).to match_json_schema(:user)
      expect(response.body).to be_json_eql(serialize(@user_2))
    end

  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
unsakini-0.0.5 spec/requests/user/user_search_spec.rb
unsakini-0.0.5.pre.1 spec/requests/user/user_search_spec.rb
unsakini-0.0.4.pre.1 spec/requests/user/user_search_spec.rb
unsakini-0.0.4.3 spec/requests/user/user_search_spec.rb