Merge branch 'dynamic-todos-fixture' into 'master'

Replace static fixture for right_sidebar_spec.js

See merge request !9211
This commit is contained in:
Clement Ho 2017-02-14 17:28:08 +00:00
commit 059f47b6ba
5 changed files with 59 additions and 6 deletions

View File

@ -0,0 +1,4 @@
---
title: Replace static fixture for right_sidebar_spec.js
merge_request: 9211
author: winniehell

View File

@ -1 +1,2 @@
*.html.raw
*.json

View File

@ -1,4 +0,0 @@
{
"count": 1,
"delete_path": "/dashboard/todos/1"
}

View File

@ -0,0 +1,52 @@
require 'spec_helper'
describe 'Todos (JavaScript fixtures)' do
include JavaScriptFixturesHelpers
let(:admin) { create(:admin) }
let(:namespace) { create(:namespace, name: 'frontend-fixtures' )}
let(:project) { create(:project_empty_repo, namespace: namespace, path: 'todos-project') }
let(:issue_1) { create(:issue, title: 'issue_1', project: project) }
let!(:todo_1) { create(:todo, user: admin, project: project, target: issue_1, created_at: 5.hours.ago) }
let(:issue_2) { create(:issue, title: 'issue_2', project: project) }
let!(:todo_2) { create(:todo, :done, user: admin, project: project, target: issue_2, created_at: 50.hours.ago) }
before(:all) do
clean_frontend_fixtures('todos/')
end
describe Dashboard::TodosController, '(JavaScript fixtures)', type: :controller do
render_views
before(:each) do
sign_in(admin)
end
it 'todos/todos.html.raw' do |example|
get :index
expect(response).to be_success
store_frontend_fixture(response, example.description)
end
end
describe Projects::TodosController, '(JavaScript fixtures)', type: :controller do
render_views
before(:each) do
sign_in(admin)
end
it 'todos/todos.json' do |example|
post :create,
namespace_id: namespace.path,
project_id: project.path,
issuable_type: 'issue',
issuable_id: issue_2.id,
format: 'json'
expect(response).to be_success
store_frontend_fixture(response, example.description)
end
end
end

View File

@ -34,7 +34,7 @@ require('~/extensions/jquery.js');
describe('RightSidebar', function() {
var fixtureName = 'issues/open-issue.html.raw';
preloadFixtures(fixtureName);
loadJSONFixtures('todos.json');
loadJSONFixtures('todos/todos.json');
beforeEach(function() {
loadFixtures(fixtureName);
@ -64,7 +64,7 @@ require('~/extensions/jquery.js');
});
it('should broadcast todo:toggle event when add todo clicked', function() {
var todos = getJSONFixture('todos.json');
var todos = getJSONFixture('todos/todos.json');
spyOn(jQuery, 'ajax').and.callFake(function() {
var d = $.Deferred();
var response = todos;