Sha256: 2e0413889b3f87210d555c03ff13181839316b9382e76c0187d2c1e714d0fcbb

Contents?: true

Size: 1.61 KB

Versions: 14

Compression:

Stored size: 1.61 KB

Contents

require 'minitest_helper'

describe Repository, 'Log' do
  
  let(:repository) { Repository.new :test }

  it 'Without commits' do
    repository.log.must_be_empty
  end

  it 'First commit' do
    repository[:countries].insert 'AR', name: 'Argentina'
    commit = repository.commit author: 'User', message: 'First commit'

    repository.log.count.must_equal 1
    repository.log.first.id.must_equal commit.id
  end

  it 'Commit sequence' do
    repository[:countries].insert 'AR', name: 'Argentina'
    commit_1 = repository.commit author: 'User', message: 'Commit 1'

    repository[:countries].insert 'UY', name: 'Uruguay'
    commit_2 = repository.commit author: 'User', message: 'Commit 2'

    repository.log.count.must_equal 2
    repository.log[0].id.must_equal commit_2.id
    repository.log[1].id.must_equal commit_1.id
  end

  it 'Merge' do
    repository[:countries].insert 'AR', name: 'Argentina'
    commit_1 = repository.commit author: 'User', message: 'Commit 1'
    repository.push
    
    other_repository = Repository.new :other
    other_repository.pull
    
    other_repository[:countries].insert 'UY', name: 'Uruguay'
    commit_2 = other_repository.commit author: 'User', message: 'Commit 2'

    other_repository.push

    repository[:countries].insert 'BR', name: 'Brasil'
    commit_3 = repository.commit author: 'User', message: 'Commit 3'

    repository.pull

    repository.log.count.must_equal 4
    repository.log[0].id.must_equal repository.current_commit.id
    repository.log[1].id.must_equal commit_3.id
    repository.log[2].id.must_equal commit_2.id
    repository.log[3].id.must_equal commit_1.id
  end

end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
eternity-4.0.0 spec/log_spec.rb
eternity-3.0.1 spec/log_spec.rb
eternity-3.0.0 spec/log_spec.rb
eternity-2.0.1 spec/log_spec.rb
eternity-2.0.0 spec/log_spec.rb
eternity-1.1.1 spec/log_spec.rb
eternity-1.1.0 spec/log_spec.rb
eternity-1.0.0 spec/log_spec.rb
eternity-0.1.3 spec/log_spec.rb
eternity-0.1.2 spec/log_spec.rb
eternity-0.1.1 spec/log_spec.rb
eternity-0.1.0 spec/log_spec.rb
eternity-0.0.5 spec/log_spec.rb
eternity-0.0.4 spec/log_spec.rb