summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/functional/bin_test.rb24
-rw-r--r--test/remote/Readme.md15
2 files changed, 39 insertions, 0 deletions
diff --git a/test/functional/bin_test.rb b/test/functional/bin_test.rb
new file mode 100644
index 0000000..bc15e38
--- /dev/null
+++ b/test/functional/bin_test.rb
@@ -0,0 +1,24 @@
+require 'minitest/autorun'
+require 'minitest/pride'
+require 'minitest/hell'
+
+class BinTest < Minitest::Test
+
+ def test_bin_loading
+ assert_command_runs("version")
+ assert_equal 0, $?.exitstatus
+ end
+
+ protected
+
+ def assert_command_runs(command)
+ out = `#{path_to_executable} #{command} 2>&1`
+ assert ($?.exitstatus == 0),
+ "failed to run 'nickserver #{command}':\n #{out}"
+ end
+
+ def path_to_executable
+ File.expand_path(File.dirname(__FILE__) + '/../../bin/nickserver')
+ end
+
+end
diff --git a/test/remote/Readme.md b/test/remote/Readme.md
new file mode 100644
index 0000000..957ea12
--- /dev/null
+++ b/test/remote/Readme.md
@@ -0,0 +1,15 @@
+Integration tests for clients of remote services
+================================================
+
+The tests in this directory are integration test with remote services. However
+we aims at testing the client side of the equation as that is what we control
+here.
+
+So unexpected server behavious should *crash* the test if we are not dealing
+with it properly yet and have no unit test for it.
+
+Server responses that we do not expect but handle in the code and test in unit
+tests make the test *skip*.
+
+The Behaviour we would normally expect should make the test *pass*
+