update tags count if tag gets deleted

This commit is contained in:
Robert Schilling 2014-08-17 16:21:31 +02:00
parent 6c9cb565f1
commit 37a274a568
6 changed files with 56 additions and 14 deletions

View file

@ -34,7 +34,7 @@ class Projects::TagsController < Projects::ApplicationController
respond_to do |format|
format.html { redirect_to project_tags_path }
format.js { render nothing: true }
format.js
end
end
end

View file

@ -12,7 +12,7 @@
= nav_link(controller: :tags) do
= link_to project_tags_path(@project) do
Tags
%span.badge= @repository.tags.length
%span.badge.js-totaltags-count= @repository.tags.length
= nav_link(controller: :repositories, action: :stats) do
= link_to stats_project_repository_path(@project) do

View file

@ -0,0 +1,3 @@
$('.js-totaltags-count').html("#{@repository.tags.size}")
- if @repository.tags.size == 0
$('.tags').load(document.URL + ' .nothing-here-block').hide().fadeIn(1000)

View file

@ -12,6 +12,7 @@
Tags give the ability to mark specific points in history as being important
%hr
.tags
- unless @tags.empty?
%ul.bordered-list
- @tags.each do |tag|

View file

@ -27,5 +27,15 @@ Feature: Project Browse tags
And I submit new tag form with tag that already exists
Then I should see new an error that tag already exists
@javascript
Scenario: I delete a tag
Given I delete tag 'v1.1.0'
Then I should not see tag 'v1.1.0'
@javascript
Scenario: I delete all tags and see info message
Given I delete all tags
Then I should see tags info message
# @wip
# Scenario: I can download project by tag

View file

@ -51,4 +51,32 @@ class ProjectBrowseTags < Spinach::FeatureSteps
step 'I should see new an error that tag already exists' do
page.should have_content 'Tag already exists'
end
step "I delete tag 'v1.1.0'" do
within '.tags' do
first('.btn-remove').click
sleep 0.05
end
end
step "I should not see tag 'v1.1.0'" do
within '.tags' do
page.all(visible: true).should_not have_content 'v1.1.0'
end
end
step 'I delete all tags' do
within '.tags' do
all('.btn-remove').each do |remove|
remove.click
sleep 0.05
end
end
end
step 'I should see tags info message' do
within '.tags' do
page.should have_content 'Repository has no tags yet.'
end
end
end