diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..b5ea720 --- /dev/null +++ b/Rakefile @@ -0,0 +1,10 @@ +require 'rake/testtask' + +Rake::TestTask.new do |t| + t.libs = ["lib"] + t.warning = true + t.test_files = FileList['test/*_test.rb'] +end + +task default: :test + diff --git a/find_xml_file.rb b/find_xml_file.rb new file mode 100644 index 0000000..f848fd3 --- /dev/null +++ b/find_xml_file.rb @@ -0,0 +1,15 @@ + +def find_xml_file(folder) + files = Dir.entries(folder) + + xml_file = nil + + files.each do |filename| + if filename.match "\.xml$" + xml_file = filename + break + end + end + + return xml_file +end diff --git a/test/find_xml_test.rb b/test/find_xml_test.rb new file mode 100644 index 0000000..09af9d2 --- /dev/null +++ b/test/find_xml_test.rb @@ -0,0 +1,11 @@ +require_relative 'test_helper' + +describe "find_xml_file" do + it "should return nil if there are no xml files" do + expect(find_xml_file('.')).must_be_nil + end + + it "should return an xml file if it's in the folder" do + expect(find_xml_file('./test/test_data')).must_equal "example.xml" + end +end diff --git a/test/test_data/example.xml b/test/test_data/example.xml new file mode 100644 index 0000000..e69de29 diff --git a/test/test_helper.rb b/test/test_helper.rb new file mode 100644 index 0000000..04be228 --- /dev/null +++ b/test/test_helper.rb @@ -0,0 +1,13 @@ +require 'minitest' +require 'minitest/autorun' +require 'minitest/reporters' +require 'minitest/skip_dsl' +require 'awesome_print' +# Add simplecov + +Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new + +# Require_relative your lib files here! + +require_relative '../find_xml_file.rb' +