diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2024-08-08 18:13:00 +0300 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2024-08-15 23:59:08 +0300 |
commit | 50c92cc7e2924009ecab3e4004448b01d687707c (patch) | |
tree | c22b49816a3c79dae4727780962aa0928df42b52 /utils/ipc/mojo/public/tools/mojom/feature_unittest.py | |
parent | d3bf27180ef1d91b86b7b87a2378e559eaff5455 (diff) |
meson: Move all code generation scripts to utils/codegen/
We have multiple code generation scripts in utils/, mixed with other
miscellaneous utilities, as well as a larger code base based on mojom in
utils/ipc/. To make code sharing easier between the generator scripts,
without creating a mess in the utils/ directory, move all the code
generation code to utils/codegen/.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
Diffstat (limited to 'utils/ipc/mojo/public/tools/mojom/feature_unittest.py')
-rw-r--r-- | utils/ipc/mojo/public/tools/mojom/feature_unittest.py | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/utils/ipc/mojo/public/tools/mojom/feature_unittest.py b/utils/ipc/mojo/public/tools/mojom/feature_unittest.py deleted file mode 100644 index 5f014e1c..00000000 --- a/utils/ipc/mojo/public/tools/mojom/feature_unittest.py +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 2023 The Chromium Authors -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -from mojom_parser_test_case import MojomParserTestCase - - -class FeatureTest(MojomParserTestCase): - """Tests feature parsing behavior.""" - def testFeatureOff(self): - """Verifies basic parsing of feature types.""" - types = self.ExtractTypes(""" - // e.g. BASE_DECLARE_FEATURE(kFeature); - [AttributeOne=ValueOne] - feature kFeature { - // BASE_FEATURE(kFeature,"MyFeature", - // base::FEATURE_DISABLED_BY_DEFAULT); - const string name = "MyFeature"; - const bool default_state = false; - }; - """) - self.assertEqual('name', types['kFeature'].constants[0].mojom_name) - self.assertEqual('"MyFeature"', types['kFeature'].constants[0].value) - self.assertEqual('default_state', types['kFeature'].constants[1].mojom_name) - self.assertEqual('false', types['kFeature'].constants[1].value) - - def testFeatureOn(self): - """Verifies basic parsing of feature types.""" - types = self.ExtractTypes(""" - // e.g. BASE_DECLARE_FEATURE(kFeature); - feature kFeature { - // BASE_FEATURE(kFeature,"MyFeature", - // base::FEATURE_ENABLED_BY_DEFAULT); - const string name = "MyFeature"; - const bool default_state = true; - }; - """) - self.assertEqual('name', types['kFeature'].constants[0].mojom_name) - self.assertEqual('"MyFeature"', types['kFeature'].constants[0].value) - self.assertEqual('default_state', types['kFeature'].constants[1].mojom_name) - self.assertEqual('true', types['kFeature'].constants[1].value) - - def testFeatureWeakKeyword(self): - """Verifies that `feature` is a weak keyword.""" - types = self.ExtractTypes(""" - // e.g. BASE_DECLARE_FEATURE(kFeature); - [AttributeOne=ValueOne] - feature kFeature { - // BASE_FEATURE(kFeature,"MyFeature", - // base::FEATURE_DISABLED_BY_DEFAULT); - const string name = "MyFeature"; - const bool default_state = false; - }; - struct MyStruct { - bool feature = true; - }; - interface InterfaceName { - Method(string feature) => (int32 feature); - }; - """) - self.assertEqual('name', types['kFeature'].constants[0].mojom_name) - self.assertEqual('"MyFeature"', types['kFeature'].constants[0].value) - self.assertEqual('default_state', types['kFeature'].constants[1].mojom_name) - self.assertEqual('false', types['kFeature'].constants[1].value) - - def testFeatureAttributesAreFeatures(self): - """Verifies that feature values in attributes are really feature types.""" - a_mojom = 'a.mojom' - self.WriteFile( - a_mojom, 'module a;' - 'feature F { const string name = "f";' - 'const bool default_state = false; };') - b_mojom = 'b.mojom' - self.WriteFile( - b_mojom, 'module b;' - 'import "a.mojom";' - 'feature G' - '{const string name = "g"; const bool default_state = false;};' - '[Attri=a.F] interface Foo { Foo(); };' - '[Boink=G] interface Bar {};') - self.ParseMojoms([a_mojom, b_mojom]) - b = self.LoadModule(b_mojom) - self.assertEqual(b.interfaces[0].attributes['Attri'].mojom_name, 'F') - self.assertEqual(b.interfaces[1].attributes['Boink'].mojom_name, 'G') |