Полное описание тестового задания: go-rti-testing
Приложение тестировалось на Ubuntu 18.04.4 LTS
- Убедиться, что уже установлен Docker Engine;
- Собрать Docker образ: docker build -t go-rti-testing .;
- Создать и запустить контейнер: docker run --publish 8000:8080 --detach --name grt go-rti-testing;
- Убедившись в работе, можно удалить контейнер: docker rm --force grt.
Пример запроса
curl --location --request POST 'http://localhost:8000/calculate' \
--header 'Content-Type: application/json' \
--data-raw '{
"product":{
"name":"Игровой",
"components":[
{
"isMain":true,
"name":"Интернет",
"prices":[
{
"cost":500,
"priceType":"COST",
"ruleApplicabilities":[
{
"codeName":"technology",
"operator":"EQ",
"value":"xpon"
},
{
"codeName":"internetSpeed",
"operator":"EQ",
"value":"100"
}
]
},
{
"cost":900,
"priceType":"COST",
"ruleApplicabilities":[
{
"codeName":"technology",
"operator":"EQ",
"value":"xpon"
},
{
"codeName":"internetSpeed",
"operator":"EQ",
"value":"200"
}
]
},
{
"cost":10,
"priceType":"DISCOUNT",
"ruleApplicabilities":[
{
"codeName":"internetSpeed",
"operator":"GTE",
"value":"50"
}
]
}
]
},
{
"name":"ADSL Модем",
"prices":[
{
"cost":300,
"priceType":"COST",
"ruleApplicabilities":[
{
"codeName":"technology",
"operator":"EQ",
"value":"adsl"
}
]
}
]
}
]
},
"conditions":[
{
"ruleName":"technology",
"value":"xpon"
},
{
"ruleName":"internetSpeed",
"value":"200"
}
]
}'