Commit 28e56b2f authored by Pavel Vainerman's avatar Pavel Vainerman

(REST API): добавил тест на '/'

parent fd9b2b9d
...@@ -689,7 +689,7 @@ Poco::JSON::Object::Ptr <xsl:value-of select="$CLASSNAME"/>_SK::httpRequest( con ...@@ -689,7 +689,7 @@ Poco::JSON::Object::Ptr <xsl:value-of select="$CLASSNAME"/>_SK::httpRequest( con
Poco::JSON::Object::Ptr <xsl:value-of select="$CLASSNAME"/>_SK::httpRequestLog( const Poco::URI::QueryParameters&amp; p ) Poco::JSON::Object::Ptr <xsl:value-of select="$CLASSNAME"/>_SK::httpRequestLog( const Poco::URI::QueryParameters&amp; p )
{ {
Poco::JSON::Object::Ptr jret = new Poco::JSON::Object(); Poco::JSON::Object::Ptr jret = new Poco::JSON::Object();
jret->set(myname,uniset::json::make_object("log", Debug::str(mylog->level()))); jret->set("log",Debug::str(mylog->level()));
return jret; return jret;
} }
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ. ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ.
*/ */
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// generate timestamp: 2016-12-23+03:00 // generate timestamp: 2017-01-06+03:00
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
#ifndef UObject_SK_H_ #ifndef UObject_SK_H_
#define UObject_SK_H_ #define UObject_SK_H_
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ. ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ.
*/ */
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// generate timestamp: 2016-12-23+03:00 // generate timestamp: 2017-01-06+03:00
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
#include <memory> #include <memory>
#include <iomanip> #include <iomanip>
...@@ -626,7 +626,7 @@ Poco::JSON::Object::Ptr UObject_SK::httpRequest( const std::string& req, const P ...@@ -626,7 +626,7 @@ Poco::JSON::Object::Ptr UObject_SK::httpRequest( const std::string& req, const P
Poco::JSON::Object::Ptr UObject_SK::httpRequestLog( const Poco::URI::QueryParameters& p ) Poco::JSON::Object::Ptr UObject_SK::httpRequestLog( const Poco::URI::QueryParameters& p )
{ {
Poco::JSON::Object::Ptr jret = new Poco::JSON::Object(); Poco::JSON::Object::Ptr jret = new Poco::JSON::Object();
jret->set(myname,uniset::json::make_object("log", Debug::str(mylog->level()))); jret->set("log",Debug::str(mylog->level()));
return jret; return jret;
} }
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
......
...@@ -14,6 +14,7 @@ using namespace uniset; ...@@ -14,6 +14,7 @@ using namespace uniset;
using namespace uniset::extensions; using namespace uniset::extensions;
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
static std::shared_ptr<SMInterface> shm; static std::shared_ptr<SMInterface> shm;
// -----------------------------------------------------------------------------
static void init_test() static void init_test()
{ {
shm = smiInstance(); shm = smiInstance();
...@@ -21,10 +22,9 @@ static void init_test() ...@@ -21,10 +22,9 @@ static void init_test()
REQUIRE( uniset_conf() != nullptr ); REQUIRE( uniset_conf() != nullptr );
} }
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
TEST_CASE("[RESTAPI]: ", "[restapi]") TEST_CASE("[REST API: conf]", "[restapi][conf]")
{ {
init_test(); init_test();
auto conf = uniset_conf();
std::string s = shm->apiRequest("/conf/get?2,Input5_S&params=iotype"); std::string s = shm->apiRequest("/conf/get?2,Input5_S&params=iotype");
Poco::JSON::Parser parser; Poco::JSON::Parser parser;
...@@ -59,5 +59,31 @@ TEST_CASE("[RESTAPI]: ", "[restapi]") ...@@ -59,5 +59,31 @@ TEST_CASE("[RESTAPI]: ", "[restapi]")
} }
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
TEST_CASE("[REST API: /]", "[restapi][info]")
{
init_test();
std::string s = shm->apiRequest("/");
Poco::JSON::Parser parser;
auto result = parser.parse(s);
// Ожидаемый формат ответа:
// {"object":{"id":5003,"isActive":true,"lostMessages":0,"maxSizeOfMessageQueue":1000,"msgCount":0,"name":"SharedMemory","objectType":"IONotifyController"}}
Poco::JSON::Object::Ptr json = result.extract<Poco::JSON::Object::Ptr>();
REQUIRE(json);
auto jret = json->get("object").extract<Poco::JSON::Object::Ptr>();
REQUIRE(jret);
auto sm = shm->SM();
REQUIRE( jret->get("id").convert<ObjectId>() == sm->getId() );
REQUIRE( jret->get("name").convert<std::string>() == sm->getName() );
REQUIRE( jret->get("objectType").convert<std::string>() == "IONotifyController" );
REQUIRE( jret->get("isActive").convert<bool>() == true );
REQUIRE( jret->get("lostMessages").convert<long>() == 0 );
}
// -----------------------------------------------------------------------------
#endif // ifndef DISABLE_REST_API #endif // ifndef DISABLE_REST_API
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
...@@ -955,6 +955,7 @@ namespace uniset ...@@ -955,6 +955,7 @@ namespace uniset
// но если указан, то проверяем.. // но если указан, то проверяем..
std::vector<std::string> seg; std::vector<std::string> seg;
uri.getPathSegments(seg); uri.getPathSegments(seg);
size_t qind = 0; size_t qind = 0;
if( seg.size() > 0 && seg[0] == "api" ) if( seg.size() > 0 && seg[0] == "api" )
...@@ -977,8 +978,7 @@ namespace uniset ...@@ -977,8 +978,7 @@ namespace uniset
else if( seg.size() == 1 ) else if( seg.size() == 1 )
qind = 0; qind = 0;
query = seg.empty() ? "" : seg[qind];
query = seg[qind];
// обработка запроса.. // обработка запроса..
if( query == "help" ) if( query == "help" )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment