// 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/core/svg/svg_text_content_element.h"

#include "third_party/blink/renderer/core/editing/testing/editing_test_base.h"
#include "third_party/blink/renderer/core/editing/visible_position.h"

namespace blink {

class SVGTextContentElementTest : public EditingTestBase {};

TEST_F(SVGTextContentElementTest, selectSubStringNotCrash) {
  SetBodyContent("<svg><text style='visibility:hidden;'>Text</text></svg>");
  SVGTextContentElement* elem =
      ToSVGTextContentElement(GetDocument().QuerySelector("text"));
  VisiblePosition start = VisiblePosition::FirstPositionInNode(
      *const_cast<SVGTextContentElement*>(elem));
  EXPECT_TRUE(start.IsNull());
  // Pass if selecting hidden text is not crashed.
  elem->selectSubString(0, 1, ASSERT_NO_EXCEPTION);
}

}  // namespace blink
