### Theme assets

# helps create a theme asset
def create_plain_text_asset(name, type)
  asset = FactoryGirl.build(:theme_asset, {
    :site => @site,
    :plain_text_name => name,
    :plain_text => 'Lorem ipsum',
    :plain_text_type => type,
    :performing_plain_text => true
  })
  # asset.should be_valid
  asset.save!

end

# creates various theme assets

Given /^a javascript asset named "([^"]*)"$/ do |name|
  @asset = create_plain_text_asset(name, 'javascript')
end

Given /^a stylesheet asset named "([^"]*)"$/ do |name|
  @asset = create_plain_text_asset(name, 'stylesheet')
end

Given /^I have an image theme asset named "([^"]*)"$/ do |name|
  @asset = FactoryGirl.create(:theme_asset, :site => @site, :source => File.open(Rails.root.join('spec', 'fixtures', 'assets', '5k.png')))
  @asset.source_filename = name
  @asset.save!
end


# other stuff

Then /^I should see "([^"]*)" as theme asset code$/ do |code|
  find(:css, "#theme_asset_plain_text").text.should == code
end

Then /^I should see a delete image button$/ do
  page.has_css?("ul.theme-assets li .more a.remove").should be_true
end

Then /^I should not see a delete image button$/ do
  page.has_css?("ul.theme-assets li .more a.remove").should be_false
end