Sha256: 61aa6ebec0a6fa1a5efdbfacf280203daf3adc747a86bbcd36020311d4607284

Contents?: true

Size: 1.72 KB

Versions: 1

Compression:

Stored size: 1.72 KB

Contents

require_relative '../../spec_helper'
require "backsum/project_dsl"

describe Backsum::Project do
  
  it "can create instance by dsl block" do
    project = Backsum::Project::Dsl.new do
      name "github.com"
    end.instance

    project.name.should == "github.com"
  end

  it "can create instance by dsl file" do
    dsl = Backsum::Project::Dsl.new <<-end_eval, __FILE__, __LINE__
      name "ooxx"
    end_eval

    dsl.instance.name.should == "ooxx"
  end
  
  it "can append a server" do
    project = Backsum::Project::Dsl.new do
      server "bstar-pro-uat", username: "root" do
      end
    end.instance

    project.servers.size.should == 1
    project.servers.first.should be_a Backsum::Server
    
  end
  
  it "can set default project name by config file basename" do
    dsl = Backsum::Project::Dsl.new nil, "./projects/bak_balm.rb"
    dsl.instance.name.should == "bak_balm"
  end
  
  it "can set default backup properties" do
    dsl = Backsum::Project::Dsl.new nil, "./projects/bak_balm.rb"
    
    dsl.instance.keep_days.should == 3
    dsl.instance.keep_weeks.should == 4
    dsl.instance.backup_to.should == "./backups/bak_balm"
  end
  
  it "can override default backup properties" do
    dsl = Backsum::Project::Dsl.new do
      keep_days 5
      keep_weeks 8
      backup_to "./baks/foo"
    end
    
    dsl.instance.keep_days.should == 5
    dsl.instance.keep_weeks.should == 8
    dsl.instance.backup_to.should == "./baks/foo"
  end
  
  it "can synchronize backup_to with project name" do
    dsl = Backsum::Project::Dsl.new  do
      name "oox"
    end
    
    dsl.instance.backup_to.should == "./backups/oox"
  end

  it "can initial a Project::Dsl instance" do
    project = Project.dsl
    project.should be_a Project
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
backsum-0.0.1 spec/lib/backsum/project_dsl_spec.rb