Sha256: 56d81f2960189df43e33bbeb2169227022b435ff565b21fdea8a60525cf304d9

Contents?: true

Size: 1.66 KB

Versions: 6

Compression:

Stored size: 1.66 KB

Contents

require 'spec_helper'

module TeamcityRuby
  describe Project do
    before do
      delete_all_projects
    end

    it "lists all projects including root (built in on TeamCity)", :vcr do
      project_names = ["Project 1", "Project 2"]
      all_projects_including_root = ["<Root project>", project_names].flatten

      project_names.each do |p|
        Project.create(p)
      end

      Project.all.map(&:name).should == all_projects_including_root
    end

    it "fetches a specific project by id locator", :vcr do
      project_name = "Petshop App"
      project = Project.create(project_name)

      Project.find(:id => project.teamcity_id).should == project
    end

    it "fetches a specific project by name locator", :vcr do
      project_name = "Petshop App"
      project = Project.create(project_name)

      Project.find(:name => project_name).should == project
    end

    it "destroys a specific project", :vcr do
      project = Project.create("Petshop App")

      project.destroy!

      Project.find(:id => project.teamcity_id).should be_nil
    end

    it "creates a project with a parent project", :vcr do
      parent = Project.create("Petshop Group")

      project = Project.create("Sample Project", :parent_id => parent.teamcity_id)

      project.parent_id.should == parent.teamcity_id
    end

    it "creates a project copying its settings from a source project", :vcr do
      base_project = Project.create("Base Project")
      base_project.description = "Base Project Description"

      project_copy = Project.create("Project Copy", :source_id => base_project.teamcity_id)

      project_copy.description.should == "Base Project Description"
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
teamcity_ruby-0.0.6 spec/teamcity_ruby/project_spec.rb
teamcity_ruby-0.0.5 spec/teamcity_ruby/project_spec.rb
teamcity_ruby-0.0.4 spec/teamcity_ruby/project_spec.rb
teamcity_ruby-0.0.3 spec/teamcity_ruby/project_spec.rb
teamcity_ruby-0.0.2 spec/teamcity_ruby/project_spec.rb
teamcity_ruby-0.0.1 spec/teamcity_ruby/project_spec.rb