vinntreus / httpghost Goto Github PK
View Code? Open in Web Editor NEWSimplifies integrationtesting on the .net platform
License: Other
Simplifies integrationtesting on the .net platform
License: Other
Add time taken for a request and make it accessible in the navigation result
Own classes for basic and anonymous to make authentication pluggable and easier to add new ones by using interface from session.
Needed to try implementation of webclient instead of httpwebrequest due to threading issues. To easier make these kind of changes make the implementation of navigation-mechanism pluggable to session.
Handle posting objects which have properties like arrays of other objects etc.
Able to post just the string data
E.g
var result = session.Get(URL);
IEnumerable li = result.Find("li.odd"); //will return all LI-elements with class="odd"
var session = new Session();
var result = session.Get(URL).Follow("#mylink") => makes another get request which means this could be chained.
Aka cookies.
To enable user to do:
session.Get(URL).Find("h1").Text() -- should check for inner html in all results instead of iterating through each and it should htmldecode
like "#mySelect option[selected='selected']"
Eg.
var result = session.Get(URL);
IEnumerable li = result.Find("//li[@Class="something""); //will find li elements with class="something", returning each hit as string
Should probably have a simple request object (and also have access to a simple response object inside the NavigationResult), which has attributes for URL and DATA instead of passing to params
Perhaps kayak
Check if the newtonsoft lib is necessary
When using in nunit-test-runner, running more than three tests using Response.Headers makes the fourth test hang..
var result = new Session().Get(URL).Submit("#myform") => finds form and uses it's action (url) and submit its method(ex. post) along with data containing
Httpwebrequest clears the authentication-header upon a redirection, this serves as a problem for basic authentication scenarios, therefore upon a redirect a manual request has to be build and pass along the authenticationheader again.
empty or html-based contenttypes should return a HtmlResult where user has .Find etc which are only relevant to html. For application/json there should be a jsonresult which only has convertTo (which uses the json serializer). Make it pluggable to easy add other type of results like text/xml, application/pdf etc.. Fallback on httpresult for unknown types, which only should return response, request and timespent
Extension methods on httpresult for some use cases, e.g result.shouldBePdf(), result.shouldBeOK etc.
Autofollow a certain amount of times, return count on navigation result
HttpWebRequest considers some headers to be special and some not and prepares properties for these, when adding a restricted header an exception is thrown - since Request only handles headers in one way set the properties on httpwebrequest from the navigator to be able to use the "restricted" headers
session.Get("http://domain.com", new { q = "something" } => "http://domain.com?q=something
But it should be returning a IHtmlResult
Currently have dependency to htmlagilitypack.. would be nice to only have one dll in package..
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.