chromium/third_party/angle/src/tests/preprocessor_tests/location_test.cpp

//
// Copyright 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
{

class LocationTest : public PreprocessorTest
{};

TEST_F(LocationTest, String0_Line1)
{}

TEST_F(LocationTest, String0_Line2)
{}

TEST_F(LocationTest, String1_Line1)
{}

TEST_F(LocationTest, String1_Line2)
{}

TEST_F(LocationTest, NewlineInsideCommentCounted)
{}

TEST_F(LocationTest, ErrorLocationAfterComment)
{}

// The location of a token straddling two or more strings is that of the
// first character of the token.

TEST_F(LocationTest, TokenStraddlingTwoStrings)
{}

TEST_F(LocationTest, TokenStraddlingThreeStrings)
{}

TEST_F(LocationTest, EndOfFileWithoutNewline)
{}

TEST_F(LocationTest, EndOfFileAfterNewline)
{}

TEST_F(LocationTest, EndOfFileAfterEmptyString)
{}

TEST_F(LocationTest, ValidLineDirective1)
{}

TEST_F(LocationTest, ValidLineDirective2)
{}

TEST_F(LocationTest, LineDirectiveCommentsIgnored)
{}

TEST_F(LocationTest, LineDirectiveWithMacro1)
{}

TEST_F(LocationTest, LineDirectiveWithMacro2)
{}

TEST_F(LocationTest, LineDirectiveWithPredefinedMacro)
{}

TEST_F(LocationTest, LineDirectiveNewlineBeforeStringBreak)
{}

TEST_F(LocationTest, LineDirectiveNewlineAfterStringBreak)
{}

TEST_F(LocationTest, LineDirectiveMissingNewline)
{}

// Test for an error being generated when the line number overflows - regular version
TEST_F(LocationTest, LineOverflowRegular)
{}

// Test for an error being generated when the line number overflows - inside /* */ comment version
TEST_F(LocationTest, LineOverflowInComment)
{}

// Test for an error being generated when the line number overflows - inside \n continuation
// version
TEST_F(LocationTest, LineOverflowInContinuationN)
{}

// Test for an error being generated when the line number overflows - inside \r\n continuation
// version
TEST_F(LocationTest, LineOverflowInContinuationRN)
{}

struct LineTestParam
{};

class InvalidLineTest : public LocationTest, public testing::WithParamInterface<LineTestParam>
{};

TEST_P(InvalidLineTest, Identified)
{}

static const LineTestParam kParams[] =;

INSTANTIATE_TEST_SUITE_P();

struct LineExpressionTestParam
{};

class LineExpressionTest : public LocationTest,
                           public testing::WithParamInterface<LineExpressionTestParam>
{};

TEST_P(LineExpressionTest, ExpressionEvaluation)
{}

static const LineExpressionTestParam kParamsLineExpressionTest[] =;

INSTANTIATE_TEST_SUITE_P();

}  // namespace angle