Files
react-native/packages/react-native-codegen/e2e/__test_fixtures__/modules/NativeSampleTurboModuleArrays.js
T
Ramanpreet Nara 1ac1255d63 E2E snapshot test ObjC++ generator
Summary:
NativeModule specs exist under `react-native-github/packages/react-native-codegen/src/__tests__/modules/fixtures`. `GenerateModuleObjCpp-test.js` runs the RN Codegen on those NativeModule specs, and saves the output inside a snapshot. For convenience, the folowing command runs the legacy codegen on the fixtures:

```
buck build fbsource//xplat/js/react-native-github/packages/react-native-codegen/src/__tests__/modules:RNCodegenModuleFixtures-flow-types-ios --show-output
```

Changelog: [Internal]

Reviewed By: hramos

Differential Revision: D23637708

fbshipit-source-id: 3319f319515eca42b4499682313fea6e0bdc2a06
2020-09-29 14:39:40 -07:00

52 lines
1.5 KiB
JavaScript

/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
* @format
*/
'use strict';
import type {
RootTag,
TurboModule,
} from 'react-native/Libraries/TurboModule/RCTExport';
import * as TurboModuleRegistry from 'react-native/Libraries/TurboModule/TurboModuleRegistry';
type Animal = {|
name: string,
|};
export interface Spec extends TurboModule {
// Exported methods.
+getConstants: () => {|
const1: Array<boolean>,
const2: Array<number>,
const3: Array<string>,
id?: Array<?{|prop: number|}>,
|};
+voidFunc: () => void;
+getBool: (id: Array<boolean>) => Array<boolean>;
+getNumber: (arg: Array<number>) => Array<number>;
+getString: (arg: Array<string>) => Array<string>;
+getArray: (arg: Array<Array<any>>) => Array<Array<any>>;
+getObject: (arg: Array<Object>) => Array<Object>;
+getObjectShape: (arg: Array<{|prop: number|}>) => Array<{|prop: number|}>;
+getAlias: (arg: Array<Animal>) => Array<Animal>;
+getRootTag: (arg: Array<RootTag>) => Array<RootTag>;
+getValue: (
x: Array<number>,
y: Array<string>,
z: Array<Object>,
) => Array<Object>;
+getValueWithCallback: (callback: (value: Array<string>) => void) => void;
+getValueWithPromise: (error: Array<boolean>) => Promise<Array<string>>;
}
export default (TurboModuleRegistry.getEnforcing<Spec>(
'SampleTurboModuleArrays',
): Spec);