Giter Site home page Giter Site logo

doubleagent's People

Contributors

vinceburn avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

doubleagent's Issues

To Double Agent Tool

Add a terminal app that can process a folder of input file and send them to a running Double Agent.

Validate Docker

  1. Validate that the Vapor template docker files are working properly.
  2. Add Docker instruction to the README file

toDoubleAgent: Simplify Development Setup

Current Development setup requires user to do some manual configuration and generate an Xcode project from the swift package manager.
Then they need to setup a custom working directory in the scheme.

AC

  • Commit an Xcode project setup with a working directory in within the repository. (use $(SRCROOT) to point to the folder)
  • Add example files to custom working directory that can be use while developing.
  • Add no-upload flag in the scheme arguments.

toDoubleAgent: Creation Error Message

When the toDoubleAgent app upload the files to the mock server it prints out the request status code in the form "Response: 400".

Would be nice to update that message so it standout when the response is not a 200.

Maybe: "โŒ Response: 400"

toDoubleAgent: Add command line argument validation

Currently when a non existing command line argument is use (e.g. --Map instead of --map) the toDoubleAgent tool act as if the argument was not present. Which is reasonable, but the user will believe that the commend worked as he expected.

Solution: Report an error when an invalid argument is used, it is most likely an error the user would like to know about to avoid lost of time debugging.

Call Mapping on Body

Some POST API differ only by their body information. Add functionality to have different response for different body.

Server API: Get All

The get all API currently returns both part of all call (call matching info and response data), which can make the response very big and slow.

Remove the response data from the response.

Slow Response Time

Especially when running the server from Docker the response time is slower than expected.

Currently it is not that bad as it allow to fully appreciate the loading visual of a screen, so priority to fix will not be high.

Might relate to #8

resetAll API: Slow

Large data set will cause resetAll to take longer than expected.
ex. 16 call with 3/4 of the input files being over 300k and 2 being around 800k

Check to improve record removal from the data base.

Improve Multiple Match Error

Improve the multiple match error to include useful information to help identify what is the problem with the used data set

Lookup Body: More Flexibility

Currently the lookup body must be a String. It can be a String representing a JSON, but it must be a string, which leads to a lot of escaping.

Make it in a way that it could be passes as a String or as a JSON Object, like for the response.body.

Note

The current use of a String is due to some equality problem when using the Codability.AnyCodable wrapper to store the information.

On Successful Match add more info to header

Currently when the mock server find a matching call, a header is added to the response to indicate the ID of the call info that was returned.

Would it be interesting to add, path, method and lookup info to the returned headers?

toDoubleAgent: Resolve macOS Alias file for .json

Different Mock Use Case can use a shared common data set.

To avoid duplicating the files in every data set macOS Alias could be use.

Currently Alias are not supported.

AC

  • Add support for Alias of .json file (alias must keep the .json extension to be part of the file to be resolved)
  • The original files are copied in the __processed folder
  • The original files are not modified by the map processing

Dev Note

URL(resolvingAliasFileAt: $0)

DB: Revisit DB Scheme

The response part of the Call Info doesn't need to be searchable, would it be better to use "group" instead?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.