Skip to content

Latest commit

 

History

History
221 lines (215 loc) · 5.16 KB

TEST_CASE.md

File metadata and controls

221 lines (215 loc) · 5.16 KB

hiproxy test case structural planning

  • hosts

    • find hosts files
    • parse hosts rules
    • add hosts files
    • add hosts rule
    • get hosts rule
    • rule order
  • rewrite

    • find rewrite files
    • add rewrite files
    • add rewrite rule
    • get rewrite rule
    • rule order
    • rule merge
    • built-in variables
  • hiproxy core

    • server create
      • HTTP server
      • HTTPS server
      • specified port
      • random port
      • callbacks
        • onError
        • onBeforeRequest
        • onBeforeResponse
        • onData
      • res.getHeaders()
      • res.headers
    • server api
      • start
      • stop
      • restart
      • openBrowser
      • addCallback
      • addRule
      • enableConfFile
      • disableConfFile
      • addRewriteFile
      • addHostsFile
    • proxy
      • GET requests
        • method
        • query string
      • POST requests
        • method
        • query string
        • body
        • content length
        • Chinese characters
        • Emoji characters
        • application/json
        • multipart/form-data
        • application/x-www-form-urlencoded
        • file upload
      • request headers
        • send server headers to client
      • response headers
        • send server headers to client
        • content length
      • built-in variables
      • HTTP requsts
        • reverse proxy
      • HTTPS requests
        • reverse proxy
        • certificate auto generation
        • certificate cache
        • Tunnel proxy
        • ...
      • HTTPS to HTTP
      • HTTP to HTTPS
      • proxy rule order
      • emoji
      • CJK Unified Ideographs
      • others
        • default Host header
    • events
      • request
        • request start
        • request end
        • before proxy send
        • proxy start
        • proxy end
      • response
        • data
        • response
    • callback
      • onBeforeRequest
      • onData
      • onBeforeResponse
      • onError
    • router
      • system page
      • api router
      • source image
    • data provider
      • get
      • set
    • others
      • original request info object
      • original response info object
  • directives

    • request
      • proxy_set_header
        • set header
        • array value
        • joined together with ', '
        • over written value
        • use variables
      • proxy_hide_header
        • hide header
        • ignore case of field name
        • hide all matched headers
      • proxy_set_cookie
        • set cookie
      • proxy_hide_cookie
        • hide cookie
        • hide all matched fields
        • hide cookie header
      • proxy_method
        • GET to POST
        • GET to POST and body (form)
        • GET to POST and body (json)
        • POST to GET
        • POST to GET and query string
        • to HEAD
      • proxy_set_body
        • cover original body
        • set body multi-times
        • support json
        • support form
        • support file upload
        • use variables
      • proxy_append_body
        • merge body (form)
        • merge body (json)
        • object key path(a.b.c)
        • use variables
      • proxy_replace_body
        • replace body content
        • replace all
        • replace once
        • ignore case
        • use variables
      • proxy_timeout
        • timeout
        • discard invalid value
    • response
      • set_header
        • set header
        • array value
        • over written value
        • over written default header value
        • use variables
      • hide_header
        • hide header
        • ignore case of field name
        • hide all matched headers
      • set_cookie
        • set cookie
      • hide_cookie
        • hide cookie
        • hide all matched fields
        • hide cookie header
      • echo
        • write normal string
        • write html
        • multiple echo
        • use variables
      • send_file
        • send file content
        • content type detect
        • absolte path
        • relative path
        • work with proxy_pass
        • work with echo
        • 404
        • 500
      • sub_filter
      • sub_filter_once
    • domain
      • set
      • ssl_certificate
      • ssl_certificate_key
    • global
      • set
    • location
      • set
      • proxy_pass
      • alias
        • basic
        • relative path
        • absolute path
        • default file
        • content-type
        • error handle
        • work with echo
        • ignore proxy_pass
      • root
    • execute
      • exec scope directives
      • call multiple times res.end()
      • call multiple times res.write()
  • web api

    • open browser
    • start server
    • stop server
    • disable/enable config file
    • update config file
  • plugins

    • plugin find
    • plugin load
      • add directives
      • add page router
      • add cli command