Files
onspring-api-sdk-python/src/OnspringApiSDK.Tests/Tests_OnspringClient.py
T

219 lines
9.7 KiB
Python

import sys
import requests_mock
sys.path.append('src')
from OnspringApiSdk.OnspringClient import OnspringClient
@requests_mock.Mocker(kw='mock')
class TestOnspringClient(object):
test_url = 'https://test.com'
test_apiKey = 'apiKey'
client = OnspringClient(test_url, test_apiKey)
def test_GetFieldsByAppId_WhenFieldContainsListValues_ItShouldReturnThoseValues(self, **kwargs):
mockResponse = {
"pageNumber": 1,
"pageSize": 2,
"totalPages": 1,
"totalRecords": 2,
"items": [
{
"multiplicity": "SingleSelect",
"listId": 638,
"values": [
{
"id": "2c1af5b1-0f90-4378-b9a5-8b7e22f2bc84",
"name": "list_value_1",
"sortOrder": 1,
"numericValue": 1,
"color": "#008e8e"
},
{
"id": "0421e502-7f76-480a-9311-363aca3560bc",
"name": "list_value_2",
"sortOrder": 2,
"numericValue": 2,
"color": "#a186be"
},
{
"id": "285b91c1-5800-47cb-a030-8cf7cdd7cdf1",
"name": "updated_list_value_1676840661138}",
"sortOrder": 3,
"numericValue": 1,
"color": "#000000"
}
],
"id": 4801,
"appId": 130,
"name": "single_select_list_field",
"type": "List",
"status": "Enabled",
"isRequired": True,
"isUnique": False
},
{
"outputType": "ListValue",
"values": [
{
"id": "b235afb2-b786-4c87-bce9-fbd700e246c1",
"name": "list_value_1",
"sortOrder": 1,
"numericValue": 1,
"color": "#6dcff6"
},
{
"id": "5cd7cd55-d6a6-40e0-a560-8aa407c13210",
"name": "list_value_2",
"sortOrder": 2,
"numericValue": 2,
"color": "#8e468e"
}
],
"id": 4815,
"appId": 130,
"name": "list_formula_field",
"type": "Formula",
"status": "Enabled",
"isRequired": False,
"isUnique": False
},
]
}
kwargs['mock'].get(self.test_url + '/Fields/appId/1', json=mockResponse)
response = self.client.GetFieldsByAppId(1)
field_4801 = response.data.fields[0]
field_4815 = response.data.fields[1]
assert field_4801.id == 4801, "Field id should be 4801"
assert field_4801.listId == 638, "Field list id should be 638"
assert field_4801.multiplicity == "SingleSelect", "Field multiplicity should be SingleSelect"
assert field_4801.values is not None, "Field list values should not be None"
field_4801_value = field_4801.values[0]
assert field_4801_value.id == "2c1af5b1-0f90-4378-b9a5-8b7e22f2bc84", "Field value id should be 2c1af5b1-0f90-4378-b9a5-8b7e22f2bc84"
assert field_4801_value.name == "list_value_1", "Field value name should be list_value_1"
assert field_4801_value.sortOrder == 1, "Field value sort order should be 1"
assert field_4801_value.numericValue == 1, "Field value numeric value should be 1"
assert field_4801_value.color == "#008e8e", "Field value color should be #008e8e"
assert field_4815.id == 4815, "Field id should be 4815"
assert field_4815.listId is None, "Field list id should be None"
assert field_4815.multiplicity is None, "Field multiplicity should be None"
assert field_4815.values is not None, "Field list values should not be None"
assert field_4815.outputType == 'ListValue', 'Field output type should be ListValue'
field_4815_value = field_4815.values[0]
assert field_4815_value.id == "b235afb2-b786-4c87-bce9-fbd700e246c1", "Field value id should be b235afb2-b786-4c87-bce9-fbd700e246c1"
assert field_4815_value.name == "list_value_1", "Field value name should be list_value_1"
assert field_4815_value.sortOrder == 1, "Field value sort order should be 1"
assert field_4815_value.numericValue == 1, "Field value numeric value should be 1"
assert field_4815_value.color == "#6dcff6", "Field value color should be #6dcff6"
def test_GetFieldsByIds_WhenFieldContainsListValues_ItShouldReturnThoseValues(self, **kwargs):
mockResponse = {
"count": 2,
"items": [
{
"multiplicity": "SingleSelect",
"listId": 638,
"values": [
{
"id": "2c1af5b1-0f90-4378-b9a5-8b7e22f2bc84",
"name": "list_value_1",
"sortOrder": 1,
"numericValue": 1,
"color": "#008e8e"
},
{
"id": "0421e502-7f76-480a-9311-363aca3560bc",
"name": "list_value_2",
"sortOrder": 2,
"numericValue": 2,
"color": "#a186be"
},
{
"id": "285b91c1-5800-47cb-a030-8cf7cdd7cdf1",
"name": "updated_list_value_1676840661138}",
"sortOrder": 3,
"numericValue": 1,
"color": "#000000"
}
],
"id": 4801,
"appId": 130,
"name": "single_select_list_field",
"type": "List",
"status": "Enabled",
"isRequired": True,
"isUnique": False
},
{
"outputType": "ListValue",
"values": [
{
"id": "b235afb2-b786-4c87-bce9-fbd700e246c1",
"name": "list_value_1",
"sortOrder": 1,
"numericValue": 1,
"color": "#6dcff6"
},
{
"id": "5cd7cd55-d6a6-40e0-a560-8aa407c13210",
"name": "list_value_2",
"sortOrder": 2,
"numericValue": 2,
"color": "#8e468e"
}
],
"id": 4815,
"appId": 130,
"name": "list_formula_field",
"type": "Formula",
"status": "Enabled",
"isRequired": False,
"isUnique": False
}
]
}
kwargs['mock'].post(self.test_url + '/Fields/batch-get', json=mockResponse)
response = self.client.GetFieldsByIds([4801, 4815])
field_4801 = response.data.fields[0]
field_4815 = response.data.fields[1]
assert field_4801.id == 4801, "Field id should be 4801"
assert field_4801.listId == 638, "Field list id should be 638"
assert field_4801.multiplicity == "SingleSelect", "Field multiplicity should be SingleSelect"
assert field_4801.values is not None, "Field list values should not be None"
field_4801_value = field_4801.values[0]
assert field_4801_value.id == "2c1af5b1-0f90-4378-b9a5-8b7e22f2bc84", "Field value id should be 2c1af5b1-0f90-4378-b9a5-8b7e22f2bc84"
assert field_4801_value.name == "list_value_1", "Field value name should be list_value_1"
assert field_4801_value.sortOrder == 1, "Field value sort order should be 1"
assert field_4801_value.numericValue == 1, "Field value numeric value should be 1"
assert field_4801_value.color == "#008e8e", "Field value color should be #008e8e"
assert field_4815.id == 4815, "Field id should be 4815"
assert field_4815.listId is None, "Field list id should be None"
assert field_4815.multiplicity is None, "Field multiplicity should be None"
assert field_4815.values is not None, "Field list values should not be None"
assert field_4815.outputType == 'ListValue', 'Field output type should be ListValue'
field_4815_value = field_4815.values[0]
assert field_4815_value.id == "b235afb2-b786-4c87-bce9-fbd700e246c1", "Field value id should be b235afb2-b786-4c87-bce9-fbd700e246c1"
assert field_4815_value.name == "list_value_1", "Field value name should be list_value_1"
assert field_4815_value.sortOrder == 1, "Field value sort order should be 1"
assert field_4815_value.numericValue == 1, "Field value numeric value should be 1"
assert field_4815_value.color == "#6dcff6", "Field value color should be #6dcff6"