require 'spec_helper' describe CampaignsController do before (:each) do @user = FactoryGirl.create(:user) sign_in @user end let(:campaign){ attributes_for :campaign } let(:videolisting){ attributes_for :videolisting } it 'creates a campaign from json post' do post :create, campaign: campaign expect(response.status).to be 302 flash = response.request.env["action_dispatch.request.flash_hash"][:alert] expect(flash).not_to eq("You need to sign in or sign up before continuing.") expect(Campaign.last.clientid).to eq campaign[:clientid] end it 'creates a campaign with a nested videolisting' do campaign[:videolistings_attributes] = [videolisting,] post :create, campaign: campaign flash = response.request.env["action_dispatch.request.flash_hash"][:alert] expect(flash).not_to eq("You need to sign in or sign up before continuing.") expect(Campaign.last.videolistings.last.videocode).to eq videolisting[:videocode] expect(Campaign.last.videolistings.count).to eq 1 end end