---
# System prepended metadata

title: 'SCM-585 - [Backend] Create Adjustment Product Price for Specific Segmentations'
tags: [SSC, Ecommerce 1, Sprint 25]

---

# SCM-585 - [Backend] Create Adjustment Product Price for Specific Segmentations

## Test Scenarios

### Get Catalogue List
#### Test Scenario 1
```gherkin
Scenario: As an Admin, I want to hit get catalogue segmentation list
    Given the user has logged in to SSC
    When the user input correct params
        And the user hit get catalogue segmentation list
    Then show RC 200 OK
         And show exisiting catalogue segmentation
```

#### Test Scenario 2
```gherkin
Scenario Outline: As an Admin, I should get error response for wrong supplierId params
    Given the user has logged in to SSC
    When the user input <wrongType> for supplierId params
        And the user hit get catalogue segmentation list
    Then show error response message
    Examples:
    | wrongType    |
    | ------------ |
    | blank        |
    | alphabet     |
    | non-existent |
```

#### Test Scenario 3
```gherkin
Scenario Outline: As an Admin, I should get error response for wrong catalogueId params
    Given the user has logged in to SSC
    When the user input <wrongType> for catalogueId params
        And the user hit get catalogue segmentation list
    Then show error response message
    Examples:
    | wrongType    |
    | ------------ |
    | blank        |
    | alphabet     |
    | non-existent |
````

### Update Price Segmentation Setting
#### Test Scenario 4
```gherkin
Scenario Outline: As an Admin, I should get error response with wrong price body field
    Given the user has logged in to SSC
    When the user input <wrongType> for price body field
        And the user hit update price catalogue segmentation
    Then show error response message
    Examples:
    | wrongType |
    | --------- |
    | alphabet  |
    | blank     |
````

#### Test Scenario 5
```gherkin
Scenario Outline: As an Admin, I should get error response with wrong catalogueId body field
    Given the user has logged in to SSC
    When the user input <wrongType> for catalogueId body field
        And the user hit update price catalogue segmentation
    Then show error response message
    Examples:
    | wrongType    |
    | ------------ |
    | alphabet     |
    | blank        |
    | non-existent |
````

#### Test Scenario 6
```gherkin
Scenario: As an Admin, I should get error response with wrong segmentationId body field
    Given the user has logged in to SSC
    When the user input <wrongType> for segmentationId body field
        And the user hit update price catalogue segmentation
    Then show error response message
    Examples:
    | wrongType    |
    | ------------ |
    | blank        |
    | non-existent |
````

#### Test Scenario 7
```gherkin
Scenario: As an Admin, I should get error response with wrong segmentedCatalogueId body field
    Given the user has logged in to SSC
    When the user input <wrongType> for segmentedCatalogueId body field
        And the user hit update price catalogue segmentation
    Then show error response message
    Examples:
    | wrongType    |
    | ------------ |
    | blank        |
    | non-existent |
````

#### Test Scenario 8
```gherkin
Scenario: As an Admin, I should get error response with wrong warehouseId body field
    Given the user has logged in to SSC
    When the user input <wrongType> for warehouseId body field
        And the user hit update price catalogue segmentation
    Then show error response message
    Examples:
    | wrongType    |
    | ------------ |
    | alphabet     |
    | blank        |
    | non-existent |
````

#### Test Scenario 9
```gherkin
Scenario Outline: As an Admin, I should get error response with wrong segmentations body field
    Given the user has logged in to SSC
    When the user input <wrongType> for segmentations body field
        And the user hit update price catalogue segmentation
    Then show error response message
    Examples:
    | wrongType    |
    | ------------ |
    | alphabet     |
    | blank        |
    | non-existent |
````

#### Test Scenario 10
```gherkin
Scenario: As an Admin, I should get error response with <1 filled segmentations body field
    Given the user has logged in to SSC
    When the user input doesn't input any segmentations body field
        And the user hit update price catalogue segmentation
    Then show error response message
````

#### Test Scenario 11
```gherkin
Scenario: As an Admin, I want to update price with existing segmentation combo & SKU
    Given the user has logged in to SSC
        And segmentation combination & SKU <A> already exist
    When the user input body with segmentation combination & SKU <A>
        And the user input new price
        And the user hit update price setting endpoint
    Then existing segmentation combination & SKU <A>'s price updated with new price 
````

#### Test Scenario 12
```gherkin
Scenario: As an Admin, I want to update price with existing segmentation combo & but non-existent SKU
    Given the user has logged in to SSC
        And segmentation combination <A> already exist
        And SKU <B> isn't assigned to segmentation combination <A>
    When the user input body with segmentation combinatino <A>
        And the user input SKU <B>
        And the user input new price
        And the user hit update price setting endpoint
    Then create new row inside the existing catalogue-segmentation documents
        And add new price in the new row  
````

#### Test Scenario 13
```gherkin
Scenario: As an Admin, I want to update price with non-existent segmentation combo & SKU
    Given the user has logged in to SSC
        And segmentation combination <A> doesn't exist
        And SKU <B> isn't assigned to any segmentation
    When the user input body with segmentation combinatino <A>
        And the user input SKU <B>
        And the user input new price
        And the user hit update price setting endpoint
    Then create new row inside the current catalogue-segmentation documents
        And add new price in the new row 
````

###### tags: `Sprint 25` `Ecommerce 1` `SSC`