Edit

kc3-lang/angle/src/tests/preprocessor_tests/operator_test.cpp

Branch :

  • Show log

    Commit

  • Author : Victor Costan
    Date : 2019-02-20 10:45:24
    Hash : ffd39978
    Message : test: Replace _TEST_CASE_ with _TEST_SUITE_. Googletest is (at last) converging with industry-standard terminology [1]. We previously called test suites "test cases", which was rather confusing for folks coming from any other testing framework. Chrome now has a googletest version that supports _TEST_SUITE_ macros instead of _TEST_CASE_, so this CL cleans up some of the outdated usage. [1] https://github.com/google/googletest/blob/master/googletest/docs/primer.md#beware-of-the-nomenclature Bug: chromium:925652 Change-Id: Ia0deec0bc4216ef1adabc33985a7cbda89682608 Reviewed-on: https://chromium-review.googlesource.com/c/1477418 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Victor Costan <pwnall@chromium.org>

  • src/tests/preprocessor_tests/operator_test.cpp
  • //
    // Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    
    #include "PreprocessorTest.h"
    #include "compiler/preprocessor/Token.h"
    
    namespace angle
    {
    
    struct OperatorTestParam
    {
        const char *str;
        int op;
    };
    
    class OperatorTest : public SimplePreprocessorTest,
                         public testing::WithParamInterface<OperatorTestParam>
    {};
    
    TEST_P(OperatorTest, Identified)
    {
        OperatorTestParam param = GetParam();
    
        pp::Token token;
        lexSingleToken(param.str, &token);
        EXPECT_EQ(param.op, token.type);
        EXPECT_EQ(param.str, token.text);
    }
    
    static const OperatorTestParam kOperators[] = {{"(", '('},
                                                   {")", ')'},
                                                   {"[", '['},
                                                   {"]", ']'},
                                                   {".", '.'},
                                                   {"+", '+'},
                                                   {"-", '-'},
                                                   {"~", '~'},
                                                   {"!", '!'},
                                                   {"*", '*'},
                                                   {"/", '/'},
                                                   {"%", '%'},
                                                   {"<", '<'},
                                                   {">", '>'},
                                                   {"&", '&'},
                                                   {"^", '^'},
                                                   {"|", '|'},
                                                   {"?", '?'},
                                                   {":", ':'},
                                                   {"=", '='},
                                                   {",", ','},
                                                   {"++", pp::Token::OP_INC},
                                                   {"--", pp::Token::OP_DEC},
                                                   {"<<", pp::Token::OP_LEFT},
                                                   {">>", pp::Token::OP_RIGHT},
                                                   {"<=", pp::Token::OP_LE},
                                                   {">=", pp::Token::OP_GE},
                                                   {"==", pp::Token::OP_EQ},
                                                   {"!=", pp::Token::OP_NE},
                                                   {"&&", pp::Token::OP_AND},
                                                   {"^^", pp::Token::OP_XOR},
                                                   {"||", pp::Token::OP_OR},
                                                   {"+=", pp::Token::OP_ADD_ASSIGN},
                                                   {"-=", pp::Token::OP_SUB_ASSIGN},
                                                   {"*=", pp::Token::OP_MUL_ASSIGN},
                                                   {"/=", pp::Token::OP_DIV_ASSIGN},
                                                   {"%=", pp::Token::OP_MOD_ASSIGN},
                                                   {"<<=", pp::Token::OP_LEFT_ASSIGN},
                                                   {">>=", pp::Token::OP_RIGHT_ASSIGN},
                                                   {"&=", pp::Token::OP_AND_ASSIGN},
                                                   {"^=", pp::Token::OP_XOR_ASSIGN},
                                                   {"|=", pp::Token::OP_OR_ASSIGN}};
    
    INSTANTIATE_TEST_SUITE_P(All, OperatorTest, testing::ValuesIn(kOperators));
    
    }  // namespace angle