#encoding: utf-8 require 'spec_helper' describe 'screen' do before :all do @hostgroup = gen_name 'hostgroup' @hostgroupid = zbx.hostgroups.create(:name => @hostgroup) @template = gen_name 'template' @templateid = zbx.templates.create( :host => @template, :groups => [:groupid => @hostgroupid] ) @application = gen_name 'application' @applicationid = zbx.applications.create( :name => @application, :hostid => @templateid ) @item = gen_name 'item' @itemid = zbx.items.create( :name => @item, :key_ => "proc.num[#{gen_name 'proc'}]", :status => 0, :hostid => @templateid, :applications => [@applicationid] ) @color = "123456" @gitems = { :itemid => @itemid, :calc_fnc => "3", :color => @color, :type => "0", :periods_cnt => "5" } @graph = gen_name 'graph' @graphid = zbx.graphs.create( :gitems => [@gitems], :show_triggers => "0", :name => @graph, :width => "900", :height => "200" ) @screen_name = gen_name 'screen' end context 'when not exists' do describe 'get_or_create_for_host' do it "should return id" do screenid = zbx.screens.get_or_create_for_host( :screen_name => @screen_name, :graphids => [@graphid] ) expect(screenid).to be_kind_of(Integer) end end end context 'when exists' do before do @screen_name = gen_name 'screen' @screenid = zbx.screens.get_or_create_for_host( :screen_name => @screen_name, :graphids => [@graphid] ) end describe 'get_or_create_for_host' do it "should return id" do screenid = zbx.screens.get_or_create_for_host( :screen_name => @screen_name, :graphids => [@graphid] ) expect(screenid).to eq @screenid end end describe 'delete' do it "should return id" do expect(zbx.screens.delete(@screenid)).to eq @screenid end end end end