summaryrefslogtreecommitdiffstats
path: root/ui/ui.gyp
diff options
context:
space:
mode:
authoryusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-06 08:42:11 +0000
committeryusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-06 08:42:11 +0000
commite96322d2c8b894f74cea00a48b4c98dee14e5968 (patch)
treee12c9eba86086e54f22590eea07310a8bcfc9fcd /ui/ui.gyp
parentd4a301d9eac6efc6a49b039bf10b7888e2d64a20 (diff)
downloadchromium_src-e96322d2c8b894f74cea00a48b4c98dee14e5968.zip
chromium_src-e96322d2c8b894f74cea00a48b4c98dee14e5968.tar.gz
chromium_src-e96322d2c8b894f74cea00a48b4c98dee14e5968.tar.bz2
Write unit tests for ui::InputMethodIBus.
Since the IME binding will be used in production soon, I'd like to add unit tests for the class to prevent future regressions. ibus_client.h - Define ui::IBusClient interface which abstracts ibus IPC and makes it possible to remove ibus function calls from ui::InputMethodIBus. ibus_client_impl.cc ibus_client_impl.h - A very thin wrapper around ibus which implements ui::IBusClient. libibus-dependent parts in ui::InputMethodIBus are moved to this class. input_method_ibus.cc - Removed all ibus related code. It uses ui::IBusClient interface instead to communicate with ibus-daemon. - Now the class is testable since it does not communicate with ibus-daemon directly, and can compile on build bots where HAVE_IBUS is not #defined. input_method_ibus_unittest.cc - The test. mock_ibus_client.cc mock_ibus_client.h - A dummy IBusClient implementation for the test. The dummy implementation requires neither ibus-daemon nor ibus header files. composition_text.h composition_underline.h - Add operator== and operator!=. ui.gyp - Compile mock_ibus_client, character_composer and input_method_ibus when use_aura==1 and use_x11==1. Note that these files do not depend on ibus. - Compile ibus_client_impl when use_aura==1 and use_ibus==1. ui_unittests.gypi - Compile character_composer_unittest and input_method_ibus_unittest when use_aura==1 and use_x11==1. The test does not depend on ibus. BUG=108172 TEST=ran linux_chromeos_aura bot Review URL: http://codereview.chromium.org/9005006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116654 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/ui.gyp')
-rw-r--r--ui/ui.gyp28
1 files changed, 20 insertions, 8 deletions
diff --git a/ui/ui.gyp b/ui/ui.gyp
index dcaa2a9..6568234 100644
--- a/ui/ui.gyp
+++ b/ui/ui.gyp
@@ -136,6 +136,9 @@
'base/ime/composition_text.cc',
'base/ime/composition_text.h',
'base/ime/composition_underline.h',
+ 'base/ime/ibus_client.h',
+ 'base/ime/ibus_client_impl.cc',
+ 'base/ime/ibus_client_impl.h',
'base/ime/input_method.h',
'base/ime/input_method_base.cc',
'base/ime/input_method_base.h',
@@ -144,6 +147,8 @@
'base/ime/input_method_factory.h',
'base/ime/input_method_ibus.cc',
'base/ime/input_method_ibus.h',
+ 'base/ime/mock_ibus_client.cc',
+ 'base/ime/mock_ibus_client.h',
'base/ime/mock_input_method.cc',
'base/ime/mock_input_method.h',
'base/ime/text_input_client.cc',
@@ -375,10 +380,17 @@
],
}, { # use_aura!=1
'sources!': [
+ 'base/ime/character_composer.cc',
+ 'base/ime/character_composer.h',
+ 'base/ime/ibus_client.h',
+ 'base/ime/ibus_client_impl.cc',
+ 'base/ime/ibus_client_impl.h',
'base/ime/input_method_factory.cc',
'base/ime/input_method_factory.h',
'base/ime/input_method_ibus.cc',
'base/ime/input_method_ibus.h',
+ 'base/ime/mock_ibus_client.cc',
+ 'base/ime/mock_ibus_client.h',
'base/ime/mock_input_method.cc',
'base/ime/mock_input_method.h',
'gfx/native_theme_aura.cc',
@@ -404,8 +416,8 @@
],
}, { # else: use_ibus != 1
'sources/': [
- ['exclude', 'base/ime/input_method_ibus.cc'],
- ['exclude', 'base/ime/input_method_ibus.h'],
+ ['exclude', 'base/ime/ibus_client_impl.cc'],
+ ['exclude', 'base/ime/ibus_client_impl.h'],
],
}],
@@ -487,12 +499,6 @@
['include', 'gfx/linux_util.h'],
],
}],
- ['use_ibus != 1', {
- 'sources/': [
- ['exclude', 'base/ime/character_composer.cc'],
- ['exclude', 'base/ime/character_composer.h'],
- ],
- }],
['OS=="win"', {
'sources': [
'gfx/gdi_util.cc',
@@ -592,6 +598,12 @@
'base/keycodes/keyboard_code_conversion_x.cc',
'base/keycodes/keyboard_code_conversion_x.h',
'base/x/',
+ 'base/ime/input_method_ibus.cc',
+ 'base/ime/input_method_ibus.h',
+ 'base/ime/mock_ibus_client.cc',
+ 'base/ime/mock_ibus_client.h',
+ 'base/ime/character_composer.cc',
+ 'base/ime/character_composer.h',
],
}],
['chromeos==1', {