Add GCM push for pushing OneMDM app to devices

This commit is contained in:
leenasn
2015-11-16 19:07:29 +05:30
parent 51881fa3fb
commit c9ec15aa9b
22 changed files with 131 additions and 76 deletions

View File

@@ -1,11 +0,0 @@
require 'rails_helper'
RSpec.describe App, type: :model do
pending "add some examples to (or delete) #{__FILE__}"
let!(:app) { create(:app) }
it { should validate_presence_of :name }
it { should validate_presence_of :package_name }
end

View File

@@ -4,11 +4,12 @@ RSpec.describe Installation, type: :model do
it { should belong_to(:device) }
it { should belong_to(:batch_installation) }
# Create Installation Model [Device ID, batch installation ID, status(Pushed, Downloaded, Cancelled, Installed)]
describe "Installation status" do
let!(:installation){FactoryGirl.create(:installation)}
it "Default status" do
expect(installation.status).to eql Installation.statuses.keys[0]
end
it "Pushed" do
installation.pushed!
expect(installation.status).to eql Installation.statuses.keys[0]
@@ -29,4 +30,17 @@ RSpec.describe Installation, type: :model do
end
describe "GCM Push " do
let(:installation){FactoryGirl.build(:installation)}
it "if status is pushed" do
expect_any_instance_of(GCM).to receive(:send).and_return(installation)
installation.save
end
it "status is not pushed" do
expect_any_instance_of(GCM).not_to receive(:send)
installation.cancelled!
end
end
end