blob: 4ec66b1dfbf0aab42c859467f565fc9817aa9c57 [file] [log] [blame]
// Copyright 2017 The Chromium 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 "third_party/blink/renderer/platform/text/text_run.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace blink {
TEST(TextRunTest, IndexOfSubRun) {
TextRun run("1234567890");
EXPECT_EQ(0u, run.IndexOfSubRun(run.SubRun(0, 4)));
EXPECT_EQ(4u, run.IndexOfSubRun(run.SubRun(4, 4)));
EXPECT_EQ(6u, run.IndexOfSubRun(run.SubRun(6, 4)));
const unsigned kNotSubRun = std::numeric_limits<unsigned>::max();
EXPECT_EQ(kNotSubRun, run.IndexOfSubRun(run.SubRun(7, 4)));
EXPECT_EQ(kNotSubRun, run.IndexOfSubRun(TextRun("1")));
EXPECT_EQ(kNotSubRun, run.IndexOfSubRun(TextRun(u"1")));
TextRun run16(u"1234567890");
EXPECT_EQ(0u, run16.IndexOfSubRun(run16.SubRun(0, 4)));
EXPECT_EQ(4u, run16.IndexOfSubRun(run16.SubRun(4, 4)));
EXPECT_EQ(6u, run16.IndexOfSubRun(run16.SubRun(6, 4)));
EXPECT_EQ(kNotSubRun, run16.IndexOfSubRun(run16.SubRun(7, 4)));
EXPECT_EQ(kNotSubRun, run16.IndexOfSubRun(TextRun("1")));
EXPECT_EQ(kNotSubRun, run16.IndexOfSubRun(TextRun(u"1")));
}
} // namespace blink