From 9f72864caf46f292d0f0ce34baa5ec0e1beb7739 Mon Sep 17 00:00:00 2001 From: "Nicolas \"Pixel\" Noble" Date: Tue, 24 Mar 2015 18:50:30 +0100 Subject: [PATCH] Adding basic sanity test. --- .travis.yml | 3 ++- tools/run_tests/run_sanity.sh | 39 +++++++++++++++++++++++++++++++++++ tools/run_tests/run_tests.py | 20 +++++++++++++++++- 3 files changed, 60 insertions(+), 2 deletions(-) create mode 100755 tools/run_tests/run_sanity.sh diff --git a/.travis.yml b/.travis.yml index e43a89e453a..1cd0aeedb7e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,12 +4,13 @@ before_install: - sudo add-apt-repository ppa:h-rayflood/llvm -y - sudo apt-get update -qq - sudo apt-get install -qq libgtest-dev libgflags-dev python-virtualenv clang-3.5 - - sudo pip install cpp-coveralls + - sudo pip install cpp-coveralls mako simplejson env: global: - RUBY_VERSION=2.1 - COVERALLS_PARALLEL=true matrix: + - CONFIG=opt TEST=sanity - CONFIG=dbg TEST=c - CONFIG=dbg TEST=c++ - CONFIG=opt TEST=c diff --git a/tools/run_tests/run_sanity.sh b/tools/run_tests/run_sanity.sh new file mode 100755 index 00000000000..e915af93d4b --- /dev/null +++ b/tools/run_tests/run_sanity.sh @@ -0,0 +1,39 @@ +#!/bin/sh + +# Copyright 2015, Google Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +set -e + +export TEST=true + +cd `dirname $0`/../.. + +./tools/buildgen/generate_projects.sh diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py index a132ef45413..2d6582a521a 100755 --- a/tools/run_tests/run_tests.py +++ b/tools/run_tests/run_tests.py @@ -224,6 +224,23 @@ class CSharpLanguage(object): def __str__(self): return 'csharp' +class Sanity(object): + + def test_specs(self, config, travis): + return [config.job_spec('tools/run_tests/run_sanity.sh', None)] + + def make_targets(self): + return ['run_dep_checks'] + + def build_steps(self): + return [] + + def supports_multi_config(self): + return False + + def __str__(self): + return 'sanity' + # different configurations we can run under _CONFIGS = { 'dbg': SimpleConfig('dbg'), @@ -248,7 +265,8 @@ _LANGUAGES = { 'php': PhpLanguage(), 'python': PythonLanguage(), 'ruby': RubyLanguage(), - 'csharp': CSharpLanguage() + 'csharp': CSharpLanguage(), + 'sanity': Sanity(), } # parse command line