From e81d08b31e09a6836ccc3deab9cd0f555e31f3b5 Mon Sep 17 00:00:00 2001 From: Antonio Terceiro Date: Mon, 5 Apr 2010 14:58:12 -0300 Subject: [PATCH] Abstrating documentation tests --- test/functional/doc_controller_test.rb | 10 ++++++++++ test/noosfero_doc_test.rb | 42 ++++++++++++++++++++++++++++++++++++++++++ test/test_helper.rb | 1 + test/unit/doc_section_test.rb | 35 +++-------------------------------- 4 files changed, 56 insertions(+), 32 deletions(-) create mode 100644 test/noosfero_doc_test.rb diff --git a/test/functional/doc_controller_test.rb b/test/functional/doc_controller_test.rb index 0d68b18..03abd98 100644 --- a/test/functional/doc_controller_test.rb +++ b/test/functional/doc_controller_test.rb @@ -2,6 +2,16 @@ require File.dirname(__FILE__) + '/../test_helper' class DocControllerTest < ActionController::TestCase + include Noosfero::DocTest + + def setup + setup_doc_test + end + + def tear_down + tear_down_doc_test + end + should 'load toc in the root' do get :index assert_kind_of DocItem, assigns(:toc) diff --git a/test/noosfero_doc_test.rb b/test/noosfero_doc_test.rb new file mode 100644 index 0000000..0daaf9d --- /dev/null +++ b/test/noosfero_doc_test.rb @@ -0,0 +1,42 @@ +module Noosfero::DocTest + + ROOT = File.join(Rails.root, "test", "tmp", "doc") + + def create_doc(section, topic, language, title) + dir = File.join(ROOT, section) + FileUtils.mkdir_p(dir) + File.open("#{dir}/#{topic}.#{language}.xhtml", "w") do |f| + f.puts "

#{title}

" + end + end + + def setup_doc_test + FileUtils.mkdir_p(ROOT) + + # root + create_doc('', 'index', 'en', 'Root') + create_doc('', 'toc', 'en', 'Root') + # cms + create_doc('cms', 'index', 'en', 'Content Management') + create_doc('cms', 'index', 'pt', 'Gerenciamento de conteúdo') + create_doc('cms', 'toc', 'en', '') + create_doc('cms', 'toc', 'pt', '') + create_doc('cms', 'adding-pictures', 'en', 'Adding pictures to gallery') + create_doc('cms', 'adding-pictures', 'pt', 'Adicionando fotos na galeria') + create_doc('cms', 'creating-a-blog', 'en', 'Creating a blog') + create_doc('cms', 'creating-a-blog', 'pt', 'Criando um blog') + # user + create_doc('user', 'index', 'en', 'User features') + create_doc('user', 'index', 'pt', 'Funcionalidades de Usuário') + create_doc('user', 'toc', 'en', '') + create_doc('user', 'toc', 'pt', '') + create_doc('user', 'accepting-friends', 'en', 'Accepting friends') + create_doc('user', 'accepting-friends', 'pt', 'Aceitando amigos') + + DocSection.stubs(:root_dir).returns(ROOT) + end + + def tear_down_doc_test + FileUtils.rm_rf(ROOT) + end +end diff --git a/test/test_helper.rb b/test/test_helper.rb index 6e64237..5c641c1 100644 --- a/test/test_helper.rb +++ b/test/test_helper.rb @@ -7,6 +7,7 @@ require 'hpricot' require 'noosfero/test' require File.dirname(__FILE__) + '/factories' +require File.dirname(__FILE__) + '/noosfero_doc_test' FileUtils.rm_rf(File.join(RAILS_ROOT, 'index', 'test')) diff --git a/test/unit/doc_section_test.rb b/test/unit/doc_section_test.rb index d326ee6..2a82e0d 100644 --- a/test/unit/doc_section_test.rb +++ b/test/unit/doc_section_test.rb @@ -2,43 +2,14 @@ require 'test_helper' class DocSectionTest < ActiveSupport::TestCase - ROOT = File.join(Rails.root, "test", "tmp", "doc") - - def create_doc(section, topic, language, title) - dir = File.join(ROOT, section) - FileUtils.mkdir_p(dir) - File.open("#{dir}/#{topic}.#{language}.xhtml", "w") do |f| - f.puts "

#{title}

" - end - end + include Noosfero::DocTest def setup - FileUtils.mkdir_p(ROOT) - - # root - create_doc('', 'index', 'en', 'Root') - create_doc('', 'toc', 'en', 'Root') - # cms - create_doc('cms', 'index', 'en', 'Content Management') - create_doc('cms', 'index', 'pt', 'Gerenciamento de conteúdo') - create_doc('cms', 'toc', 'en', '') - create_doc('cms', 'toc', 'pt', '') - create_doc('cms', 'adding-pictures', 'en', 'Adding pictures to gallery') - create_doc('cms', 'adding-pictures', 'pt', 'Adicionando fotos na galeria') - create_doc('cms', 'creating-a-blog', 'en', 'Creating a blog') - create_doc('cms', 'creating-a-blog', 'pt', 'Criando um blog') - # user - create_doc('user', 'index', 'en', 'User features') - create_doc('user', 'index', 'pt', 'Funcionalidades de Usuário') - create_doc('user', 'toc', 'en', '') - create_doc('user', 'toc', 'pt', '') - create_doc('user', 'accepting-friends', 'en', 'Accepting friends') - - DocSection.stubs(:root_dir).returns(ROOT) + setup_doc_test end def tear_down - FileUtils.rm_rf(ROOT) + tear_down_doc_test end should 'be a DocItem' do -- libgit2 0.21.2