summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorKevin Thompson <kevin@kevinthompson.info>2012-12-16 23:47:00 -0800
committerDaniel Beauchamp <daniel.beauchamp@shopify.com>2012-12-24 23:23:04 -0500
commit27338212e6347bebed1cbf08963a9af110368b76 (patch)
tree468615cd617d1519fd1a698e594b5affd9e6deda /test
parentefc78f648a76ccc9421e3fc0a16e9f6c6448b346 (diff)
Establish test suite.
Diffstat (limited to 'test')
-rw-r--r--test/cli_test.rb20
-rw-r--r--test/test_helper.rb34
2 files changed, 54 insertions, 0 deletions
diff --git a/test/cli_test.rb b/test/cli_test.rb
new file mode 100644
index 0000000..4dc1eb3
--- /dev/null
+++ b/test/cli_test.rb
@@ -0,0 +1,20 @@
+require 'test_helper'
+silent{ load 'bin/dashing' }
+
+module Thor::Actions
+ def source_paths
+ [File.join(File.expand_path(File.dirname(__FILE__)), '../templates')]
+ end
+end
+
+class CliTest < Dashing::Test
+
+ def test_project_directory_created
+ temp do |dir|
+ cli = Dashing::CLI.new
+ silent{ cli.new 'Dashboard' }
+ assert Dir.exist?(File.join(dir,'dashboard')), 'Dashing directory was not created.'
+ end
+ end
+
+end \ No newline at end of file
diff --git a/test/test_helper.rb b/test/test_helper.rb
new file mode 100644
index 0000000..d2337c5
--- /dev/null
+++ b/test/test_helper.rb
@@ -0,0 +1,34 @@
+require 'rack/test'
+require 'stringio'
+require 'test/unit'
+require 'tmpdir'
+
+ENV['RACK_ENV'] = 'test'
+WORKING_DIRECTORY = Dir.pwd.freeze
+ARGV.clear
+
+def silent
+ _stdout = $stdout
+ $stdout = mock = StringIO.new
+ begin
+ yield
+ ensure
+ $stdout = _stdout
+ end
+end
+
+def temp
+ path = File.expand_path "#{Dir.tmpdir}/#{Time.now.to_i}#{rand(1000)}/"
+ FileUtils.mkdir_p path
+ Dir.chdir path
+ yield path
+ensure
+ Dir.chdir WORKING_DIRECTORY
+ FileUtils.rm_rf(path) if File.exists?(path)
+end
+
+module Dashing
+ class Test < Test::Unit::TestCase
+ include Rack::Test::Methods
+ end
+end \ No newline at end of file