New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 870690 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 3
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

exo unittest TextInputTest.Activate crashes with component build

Project Member Reported by penghuang@chromium.org, Aug 3

Issue description

TextInputTest.Activate crashes with component build, and it only crashes when run this test with other exo unittests. If you run this test only (by --gtest-filter), the crash will not happen.

The crash log is:
[ RUN      ] TextInputTest.Activate
[110573:110573:0803/083245.225989:2501411968881:FATAL:input_method_factory.cc(76)] Check failed: !g_create_input_method_called. ui::SetUpInputMethodFactoryForTesting was called after use of ui::CreateInputMethod.  You must call ui::SetUpInputMethodFactoryForTesting earlier.
#0 0x7f3bb83457bc base::debug::StackTrace::StackTrace()
#1 0x7f3bb827bfeb logging::LogMessage::~LogMessage()
#2 0x7f3bb6534afc ui::SetUpInputMethodFactoryForTesting()
#3 0x0000004f3ed5 exo::(anonymous namespace)::TextInputTest::SetUp()
#4 0x00000055facd testing::Test::Run()
#5 0x000000560610 testing::TestInfo::Run()
#6 0x000000560b27 testing::TestCase::Run()
#7 0x00000056c147 testing::internal::UnitTestImpl::RunAllTests()
#8 0x00000056bcbd testing::UnitTest::Run()
#9 0x00000058bff1 base::TestSuite::Run()
#10 0x00000058dd5d base::(anonymous namespace)::LaunchUnitTestsInternal()
#11 0x00000058e340 base::LaunchUnitTestsSerially()
#12 0x000000469374 main
#13 0x7f3bb36da2b1 __libc_start_main
#14 0x000000468f4a _start


 
Components: Platform>Apps>ARC UI>Input>Text>IME
Owner: mukai@chromium.org
Status: Assigned (was: Untriaged)
mukai@ can you take a look?
Hmm, can't reproduce on my local environment. I'm testing with r580591. Is there some other hidden conditions to reproduce? Can you check your gn args? My gn args are:

target_os = "chromeos"
use_goma = true
is_component_build = true
enable_nacl = false
remove_webcore_debug_symbols = true
use_lld = true
I can reproduce it with below build flags. BTW, you need run exo_unittests without using --gtest_filter flag.

use_goma = true
is_component_build = true
is_debug = false
dcheck_always_on = true
enable_nacl=false
target_os = "chromeos"

Ah, I see, it retries automatically and the retries succeed since the check condition satisfies. Looking...
Status: Started (was: Assigned)
Project Member

Comment 6 by bugdroid1@chromium.org, Aug 3

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ec30509da1c2ee90874cd16b131136398844f182

commit ec30509da1c2ee90874cd16b131136398844f182
Author: Jun Mukai <mukai@chromium.org>
Date: Fri Aug 03 20:22:46 2018

SetUpInputMethodFactoryForTesting for ExoTestBase

ui::CreateInputMethod is called implicitly within the Setup of
AshTestBase (somewhere within ash::Shell::Init()), which conflicts
with ui::SetUpInputMethodFactoryForTesting(). So the CHECK fails
if TextInputTest runs along with other tests in exo (i.e. without
gtest_filter flags).

Actually SetUpInputMethodFactoryForTesting can be called for
every tests in exo, so that is moved there.

BUG= 870690 
TEST=exo_unittests succeed without --gtest_filter flag

Change-Id: I9e9bb009b7b5af3715759ee29ac6c94f9614eecf
Reviewed-on: https://chromium-review.googlesource.com/1162621
Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
Commit-Queue: Jun Mukai <mukai@chromium.org>
Cr-Commit-Position: refs/heads/master@{#580637}
[modify] https://crrev.com/ec30509da1c2ee90874cd16b131136398844f182/components/exo/test/exo_test_base.cc
[modify] https://crrev.com/ec30509da1c2ee90874cd16b131136398844f182/components/exo/text_input_unittest.cc

Status: Fixed (was: Started)

Sign in to add a comment