* set up refactored onboarding * create onboarding page * add in first slide and change slide functionality * fix test suite * profile refactor * profile refactor * refactor to api * add checkbox fields * add checkbox fields * remove puts * add basic css * add styling * add redirect * hide back and next at first and last slides * test refactored onboarding * test refactored onboarding * remove article edits * Fix schema * Add deleted file back in * Add default value for checked_t&c column * Adjust HTML structure to keep nav buttons in place * Fix ESLint issues on Onboarding.jsx file * Handling for undefined or empty followedTags on getUserTags * Fix codeclimate issues * Fix codeclimate issues * Fix more codeclimate issues * Fix more codeclimate issues * Update Onboarding snapshots * Uncheck the CoC and T&C checkboxes on render * Update snapshots * Return false instead of raising error * Update spec to use new onboarding * Redirect to onboarding if haven't seen it yet * Prevent redirect to onboarding from /signout_confirm * Use assign_attributes instead of saving twice * Move COC and T&C checkbox page to second slide * Add 'go back to original page' functionality * Reuse ready prototype logic * Keep track of the last visited onboarding page * Fix email subscription bug * Fix overflow issue for tags page * Remove height to prevent page container scrolling * Check for CoC and T&C for displaying onboarding * Add InstantClick redirect and preserve referrer in client * Fix async update + check by using localStorage * Turn off onboarding for tests * Finalize design for onboarding * Finalize design for onboarding * Make bulk follows during onboarding * Fix bulk follow test
33 lines
939 B
Ruby
33 lines
939 B
Ruby
require "rails_helper"
|
|
|
|
RSpec.describe "FollowsApi", type: :request do
|
|
describe "POST /api/follows" do
|
|
let(:user) { create(:user) }
|
|
let(:user2) { create(:user) }
|
|
let(:user3) { create(:user) }
|
|
let(:user4) { create(:user) }
|
|
let(:user5) { create(:user) }
|
|
let(:users_hash) do
|
|
[{ id: user2.id }, { id: user3.id }, { id: user4.id }, { id: user5.id }]
|
|
end
|
|
|
|
it "returns empty if user not signed in" do
|
|
post "/api/follows", params: { users: users_hash }
|
|
expect(response.body.size).to eq(0)
|
|
end
|
|
|
|
it "makes successful ping" do
|
|
sign_in user
|
|
post "/api/follows", params: { users: users_hash }
|
|
expect(response.body).to include("outcome")
|
|
end
|
|
|
|
it "creates follows" do
|
|
sign_in user
|
|
run_background_jobs_immediately do
|
|
post "/api/follows", params: { users: users_hash }
|
|
end
|
|
expect(Follow.all.size).to eq(users_hash.size)
|
|
end
|
|
end
|
|
end
|