40 lines
		
	
	
		
			972 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
		
		
			
		
	
	
			40 lines
		
	
	
		
			972 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
|   | require 'db/mongo/models/job_task' | ||
|  | 
 | ||
|  | RSpec.describe Devops::Model::JobTask, type: :model do | ||
|  |   let(:task) { build(:task) } | ||
|  | 
 | ||
|  |   describe '#initialize' do | ||
|  |     let(:given_moment) { Time.new(2007,11,1,15,25,0, "+01:00") } | ||
|  | 
 | ||
|  |     it 'converts created_at to localtime' do | ||
|  |       converted = build(:task, created_at: given_moment).created_at | ||
|  |       expect(converted).to eq 1193927100
 | ||
|  |     end | ||
|  | 
 | ||
|  |     it 'converts updated_at to localtime' do | ||
|  |       converted = build(:task, updated_at: given_moment).updated_at | ||
|  |       expect(converted).to eq 1193927100
 | ||
|  |     end | ||
|  |   end | ||
|  | 
 | ||
|  |   describe '#to_hash' do | ||
|  |     it 'returns hash with some keys' do | ||
|  |       expect(task.to_hash.keys).to match_array(%w(
 | ||
|  |         id | ||
|  |         created_at | ||
|  |         created_by | ||
|  |         project | ||
|  |         environment | ||
|  |         type | ||
|  |         status | ||
|  |         stack | ||
|  |         subtasks | ||
|  |       )) | ||
|  |     end | ||
|  | 
 | ||
|  |     it 'could return extra elements' do | ||
|  |       expect(build(:task, stack: 'my_stack').to_hash).to include('stack' => 'my_stack') | ||
|  |     end | ||
|  |   end | ||
|  | end |