---
  - config:
    - testset: "Tags API Tests"
    - api: &api "tags_api"
    - variable_binds:
      - api: *api
    - generators:
      - test_id: {type: 'number_sequence', start: 1}
  
  - base_test: &base_test
    - generator_binds:
      - test_id: test_id
    - group: *api
    - url: "/"
    - method: "POST"
    - body: {template: {file: "../../templates/request_template.json"}}
    - validators:
      - extract_test: {jsonpath_mini: "error", test: "not_exists"}
      - extract_test: {jsonpath_mini: "result", test: "exists"}
      - compare: {jsonpath_mini: "id", comparator: "str_eq", expected: {template: $test_id}}
      - json_file_validator: {jsonpath_mini: "result", comparator: "json_compare", expected: {template: 'full_sync/$api/$method'}}

  - posts_schema_test: &posts_schema_test
    - generator_binds:
      - test_id: test_id
    - group: *api
    - url: "/"
    - method: "POST"
    - body: {template: {file: "../../templates/request_template.json"}}
    - validators:
      - extract_test: {jsonpath_mini: "error", test: "not_exists"}
      - extract_test: {jsonpath_mini: "result", test: "exists"}
      - compare: {jsonpath_mini: "id", comparator: "str_eq", expected: {template: $test_id}}
      - json_file_validator: {jsonpath_mini: "result", comparator: "json_compare", expected: {template: 'full_sync/$api/$method'}}
      - json_schema: {schema: {file: '../../schemas/post_schema.json'}}

  - test:
    - name: "get_discussion"
    - variable_binds:
      - method: "get_discussion"
      - args: '{"author":"steemit", "permlink":"firstpost"}'
    - <<: *base_test

  - test:
    - name: "get_content_replies"
    - variable_binds:
      - method: "get_content_replies"
      - args: '{"author":"alice", "permlink":"firstpost"}'
    - <<: *base_test

  - test:
    - name: "get_discussions_by_trending"
    - variable_binds:
      - method: "get_discussions_by_trending"
      - args: '{"tag":"polska","limit":1}'
    - <<: *posts_schema_test

  - test:
    - name: "get_discussions_by_hot"
    - variable_binds:
      - method: "get_discussions_by_hot"
      - args: '{"tag":"polska","limit":1}'
    - <<: *posts_schema_test

  - test:
    - name: "get_discussions_by_promoted"
    - variable_binds:
      - method: "get_discussions_by_promoted"
      - args: '{"tag":"polska","limit":1}'
    - <<: *posts_schema_test

  - test:
    - name: "get_discussions_by_created"
    - variable_binds:
      - method: "get_discussions_by_created"
      - args: '{"tag":"polska","limit":1}'
    - <<: *posts_schema_test

  - test:
    - name: "get_discussions_by_blog"
    - variable_binds:
      - method: "get_discussions_by_blog"
      - args: '{"tag":"blocktrades","limit":1}'
    - <<: *posts_schema_test

  - test:
    - name: "get_discussions_by_comments"
    - variable_binds:
      - method: "get_discussions_by_comments"
      - args: '{"start_author":"steemit","start_permlink":"firstpost","limit":1}'
    - <<: *posts_schema_test

  - test:
    - name: "get_discussions_by_author_before_date"
    - variable_binds:
      - method: "get_discussions_by_author_before_date"
      - args: '{"author":"steemit","start_permlink":"firstpost","before_date":"2016-04-19T22:49:43","limit":1}'
    - <<: *base_test

  - test:
    - name: "get_post_discussions_by_payout"
    - variable_binds:
      - method: "get_post_discussions_by_payout"
      - args: '{"tag":"polska","limit":1}'
    - <<: *base_test

  - test:
    - name: "get_comment_discussions_by_payout"
    - variable_binds:
      - method: "get_comment_discussions_by_payout"
      - args: '{"tag":"polska","limit":1}'
    - <<: *base_test

# Not found
#  - test:
#    - name: "get_active_votes"
#    - variable_binds:
#      - method: "get_active_votes"
#      - args: '{"author":"steemit", "permlink":"firstpost"}'
#    - <<: *base_test

# Not found
#  - test:
#    - name: "get_tags_used_by_author"
#    - variable_binds:
#      - method: "get_tags_used_by_author"
#      - args: '{"author":"steemit"}'
#    - <<: *base_test

# Not found
#  - test:
#    - name: "get_discussions_by_active"
#    - variable_binds:
#      - method: "get_discussions_by_active"
#      - args: '{"tag":"steem","limit":1}'
#    - <<: *base_test

# Not found
#  - test:
#    - name: "get_discussions_by_cashout"
#    - variable_binds:
#      - method: "get_discussions_by_cashout"
#      - args: '{"tag":"steem","limit":1}'
#    - <<: *base_test

# Not found
#  - test:
#    - name: "get_discussions_by_votes"
#    - variable_binds:
#      - method: "get_discussions_by_votes"
#      - args: '{"tag":"steem","limit":1}'
#    - <<: *base_test

# Not found
#  - test:
#    - name: "get_discussions_by_children"
#    - variable_binds:
#      - method: "get_discussions_by_children"
#      - args: '{"tag":"steem","limit":1}'
#    - <<: *base_test

# No longer supported
#  - test:
#    - name: "get_account_votes"
#    - variable_binds:
#      - method: "get_account_votes"
#      - args: '{"account":"steemit"}'
#    - <<: *base_test