<commit_before># Cloud Functions for Firebase iOS SDK

## To run unit tests

Choose the FirebaseFunctions_Tests scheme and press Command-u.

## To run integration tests

Before running the integration tests, you'll need to start a backend emulator
for them to talk to.

1.  Make sure you have `npm` installed.
2.  Run the backend startup script: `Backend/start.sh`
    It will use `npm install` to automatically download the libraries it needs
    to run the [Cloud Functions Local Emulator](https://cloud.google.com/functions/docs/emulator).
    The first time you run it, it will ask for a projectId.
    You can put anything you like. It will be ignored.
3.  Create the workspace in Functions/Example with `pod install`.
4.  `open FirebaseFunctions.xcworkspace`
5.  Choose the FirebaseFunctions_IntegrationTests scheme and press Command-u.
6.  When you are finished, you can press any key to stop the backend.<commit_msg>Add Development section to Functions README (#1230)<commit_after># Cloud Functions for Firebase iOS SDK

## Development

Follow the subsequent instructions to develop, debug, unit test, and
integration test FirebaseFunctions:

```
$ git clone <EMAIL>:firebase/firebase-ios-sdk.git
$ cd firebase-ios-sdk/Functions/Example
$ pod update
$ open FirebaseFunctions.xcworkspace
```

### Running Unit Tests

Choose the FirebaseFunctions_Tests scheme and press Command-u.

## Running Integration Tests

Before running the integration tests, you'll need to start a backend emulator
for them to talk to.

1.  Make sure you have `npm` installed.
2.  Run the backend startup script: `Backend/start.sh`
    It will use `npm install` to automatically download the libraries it needs
    to run the [Cloud Functions Local Emulator](https://cloud.google.com/functions/docs/emulator).
    The first time you run it, it will ask for a projectId.
    You can put anything you like. It will be ignored.
3.  Create the workspace in Functions/Example with `pod install`.
4.  `open FirebaseFunctions.xcworkspace`
5.  Choose the FirebaseFunctions_IntegrationTests scheme and press Command-u.
6.  When you are finished, you can press any key to stop the backend.
{'fraction_non_alphanumeric': 0.06759259259259259, 'fraction_numerical': 0.007407407407407408, 'mean_word_length': 4.182254196642686, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 4, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5730155', 'n_tokens_mistral': 597, 'n_tokens_neox': 573, 'n_words': 282}