From bebd7df07287ba1bc78792ed669eec35d2717e2d Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Thu, 5 Jun 2014 17:09:09 -0400 Subject: [PATCH] add "test" rake task and initial test case --- Makefile | 7 +++++-- Rakefile.rb | 17 +++++++++++++++++ test/src/test_FileReader.cc | 10 ++++++++++ 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 test/src/test_FileReader.cc diff --git a/Makefile b/Makefile index d23253f..252accb 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,7 @@ +.PHONY: default default: - -%: + rake $@ + +.PHONY: test +test: rake $@ diff --git a/Rakefile.rb b/Rakefile.rb index 9cb5660..840ca96 100644 --- a/Rakefile.rb +++ b/Rakefile.rb @@ -5,6 +5,7 @@ require "rake/clean" require "rscons" NAME = "jes" +GTEST_VERSION = "1.7.0" task :library do Rscons::Environment.new do |env| @@ -14,6 +15,22 @@ task :library do end end +task :test => :library do + Rscons::Environment.new do |env| + env.build_root = "build" + env["CPPPATH"] << "src/lib/include" + env["CPPPATH"] << "gtest-#{GTEST_VERSION}/include" + env["CPPPATH"] << "gtest-#{GTEST_VERSION}" + env["LIBS"] << NAME + env["LIBPATH"] << env.build_root + sources = Dir["gtest-#{GTEST_VERSION}/src/gtest-all.cc", + "gtest-#{GTEST_VERSION}/src/gtest_main.cc", + "test/src/**/*.cc"] + env.Program("build/tests", sources) + end + system("./build/tests") +end + task :default => [:library] task :clean do diff --git a/test/src/test_FileReader.cc b/test/src/test_FileReader.cc new file mode 100644 index 0000000..4d34531 --- /dev/null +++ b/test/src/test_FileReader.cc @@ -0,0 +1,10 @@ +#include "gtest/gtest.h" +#include "jes/FileReader.h" + +using namespace jes; + +TEST(FileReaderTest, num_lines_defaults_to_0) +{ + FileReader fr; + EXPECT_EQ(0, fr.num_lines()); +}