LCOV - code coverage report
Current view: top level - shared_model/backend/protobuf/impl - proto_permission_to_string.cpp (source / functions) Hit Total Coverage
Test: coverage_cleared.info Lines: 4 22 18.2 %
Date: 2018-12-05 17:11:35 Functions: 2 4 50.0 %

          Line data    Source code
       1             : /**
       2             :  * Copyright Soramitsu Co., Ltd. All Rights Reserved.
       3             :  * SPDX-License-Identifier: Apache-2.0
       4             :  */
       5             : 
       6             : #include "backend/protobuf/proto_permission_to_string.hpp"
       7             : 
       8             : #include "backend/protobuf/permissions.hpp"
       9             : #include "primitive.pb.h"
      10             : 
      11             : namespace shared_model {
      12             :   namespace proto {
      13             : 
      14             :     std::string ProtoPermissionToString::toString(
      15             :         interface::permissions::Role r) {
      16         137 :       return iroha::protocol::RolePermission_Name(
      17         137 :           proto::permissions::toTransport(r));
      18             :     }
      19             : 
      20             :     std::string ProtoPermissionToString::toString(
      21             :         interface::permissions::Grantable r) {
      22          49 :       return iroha::protocol::GrantablePermission_Name(
      23          49 :           proto::permissions::toTransport(r));
      24             :     }
      25             : 
      26             :     std::vector<std::string> ProtoPermissionToString::toString(
      27             :         const interface::RolePermissionSet &set) {
      28           0 :       std::vector<std::string> v;
      29           0 :       for (size_t i = 0; i < set.size(); ++i) {
      30           0 :         auto perm = static_cast<interface::permissions::Role>(i);
      31           0 :         if (set.test(perm)) {
      32           0 :           v.push_back(toString(perm));
      33           0 :         }
      34           0 :       }
      35           0 :       return v;
      36           0 :     }
      37             : 
      38             :     std::vector<std::string> ProtoPermissionToString::toString(
      39             :         const interface::GrantablePermissionSet &set) {
      40           0 :       std::vector<std::string> v;
      41           0 :       for (size_t i = 0; i < set.size(); ++i) {
      42           0 :         auto perm = static_cast<interface::permissions::Grantable>(i);
      43           0 :         if (set.test(perm)) {
      44           0 :           v.push_back(toString(perm));
      45           0 :         }
      46           0 :       }
      47           0 :       return v;
      48           0 :     }
      49             : 
      50             :   }  // namespace proto
      51             : }  // namespace shared_model

Generated by: LCOV version 1.13