Issue:
refactor(payment_methods): Fix db insert for payment method create

## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [ ] New feature
- [x] Enhancement
- [ ] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
<!-- Describe your changes in detail -->
Currently, payment method create API does not insert payment method record in the Db. 
have added the db call to insert the record if not already present.


### Additional Changes

- [ ] This PR modifies the API contract
- [ ] This PR modifies the database schema
- [ ] This PR modifies application configuration/environment variables

<!--
Provide links to the files with corresponding changes.

Following are the paths where you can find config files:
1. `config`
2. `crates/router/src/configs`
3. `loadtest/config`
-->


## Motivation and Context
<!--
Why is this change required? What problem does it solve?
If it fixes an open issue, please link to the issue here.

If you don't have an issue, we'd recommend starting with one first so the PR
can focus on the implementation (unless its an obvious bug or documentation fix
that will have little conversation).
-->


## How did you test it?
<!--
Did you write an integration/unit/API test to verify the code changes?
Or did you test this change manually (provide relevant screenshots)?
-->
<img width="1512" alt="image" src="https://github.com/juspay/hyperswitch/assets/76486416/29b8d829-367f-4a6a-a84b-4a4e3b35fd6b">

<img width="1495" alt="image" src="https://github.com/juspay/hyperswitch/assets/76486416/ff9e8311-eef7-4beb-9813-60534b216b60">

<img width="1507" alt="image" src="https://github.com/juspay/hyperswitch/assets/76486416/70e42034-66b5-4a00-a703-7fafc8653cdf">




## Checklist
<!-- Put an `x` in the boxes that apply -->

- [x] I formatted the code `cargo +nightly fmt --all`
- [x] I addressed lints thrown by `cargo clippy`
- [x] I reviewed submitted code
- [ ] I added unit tests for my changes where possible
- [ ] I added a [CHANGELOG](/CHANGELOG.md) entry if applicable


Resolution:
<think>
PR Context:
- Title: ci(runner): rewrite `collection_runner.sh` in rust
- Merged: 2023-07-10T10:12:14Z
- Files changed: 17 files
- Commits: 26 commits

Implementation approach:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [x] Enhancement
- [x] CI/CD

## Description
<!-- Describe your changes in detail -->
This PR aims at re-writing the collection_runner shell script to rust. With this, it drastically reduces the developer efforts to handle shell code along side the rust code by completely removing the shell code requirement.   

**Note:** #1651 needs to be merged to get Stripe and ACI collection working.

#### Usage
- Make sure you that
</think>

To implement this, you'll need to modify:


**Detailed Implementation:**


**Commit 1:** ci(runner): rewrite `collection_runner.sh` in rust (#1604)
Files to modify:


**connector-template/test.rs**
  Modify existing code

**crates/router/tests/connectors/connector_auth.rs**
  Remove:
    - function: pub::new
    - function: private::from
    - function: private::from
    - function: private::from
    - function: private::from
    - struct: pub::ConnectorAuthentication
    - struct: pub::HeaderKey
    - struct: pub::BodyKey
    - struct: pub::SignatureKey
    - struct: pub::MultiAuthKey
    - struct: pub::AutomationConfigs
    - impl: impl ConnectorAuthentication
    - impl: impl From<HeaderKey> for ConnectorAuthType
    - impl: impl From<BodyKey> for ConnectorAuthType
    - impl: impl From<SignatureKey> for ConnectorAuthType
    - impl: impl From<MultiAuthKey> for ConnectorAuthType

**crates/router/tests/connectors/dummyconnector.rs**
  Modify existing code

**crates/router/tests/connectors/main.rs**
  Remove:
    - mod: private::connector_auth

**crates/router/tests/integration_demo.rs**
  Remove:
    - mod: private::auth

**crates/test_utils/src/connector_auth.rs**
  Add:
    - function: private::default
    - function: pub::new
    - function: private::default
    - function: pub::inner
    - function: pub::new
    - function: private::from
    - function: private::from
    - function: private::from
    - function: private::from
    - struct: pub::ConnectorAuthentication
    - struct: pub::ConnectorAuthenticationMap
    - struct: pub::HeaderKey
    - struct: pub::BodyKey
    - struct: pub::SignatureKey
    - struct: pub::MultiAuthKey
    - struct: pub::AutomationConfigs
    - impl: impl Default for ConnectorAuthentication
    - impl: impl ConnectorAuthentication
    - impl: impl Default for ConnectorAuthenticationMap
    - impl: impl ConnectorAuthenticationMap
    - impl: impl From<HeaderKey> for ConnectorAuthType
    - impl: impl From<BodyKey> for ConnectorAuthType
    - impl: impl From<SignatureKey> for ConnectorAuthType
    - impl: impl From<MultiAuthKey> for ConnectorAuthType

**crates/test_utils/src/lib.rs**
  Add:
    - mod: pub::connector_auth

**crates/test_utils/src/main.rs**
  Add:
    - function: private::path_generation
    - function: private::main
    - struct: private::Args