/// <summary> /// Initializes abstract CRUD tests /// </summary> /// <param name="fixture">text context</param> /// <param name="invalidInputModel">sample invalid input model for testing</param> /// <param name="validInputModel">sample valid input model for testing</param> /// <param name="updatedValidInputModel">sample valid input model for testing, distinct from the other valid input model</param> /// <param name="ResourceListRoute">Route to list of specified resource</param> /// <param name="ResourcePostPutRoute">Route to post specified resource</param> public AbstractCRUDTest(TestsContextFixture fixture, I invalidInputModel, I validInputModel, I updatedValidInputModel, string ResourceListRoute, string ResourcePostRoute = "") { this.client = fixture.factory.CreateClient(); this._invalidInputModel = invalidInputModel; this._validInputModel = validInputModel; this._updatedValidInputModel = updatedValidInputModel; this._resourceListRoute = ResourceListRoute; this._resourcePostRoute = ResourcePostRoute == "" ? ResourceListRoute : ResourcePostRoute; }
/// <summary> /// Setup web application context as factory /// </summary> /// <param name="factory">the web application context</param> public BorrowRecordTests(TestsContextFixture fixture) { this._factory = fixture.factory; this._fixture = fixture; this.client = fixture.factory.CreateClient(); }
/// <summary> /// Setup web application context as factory /// </summary> /// <param name="factory">the web application context</param> public ReportTests(TestsContextFixture fixture) { this._fixture = fixture; this.client = fixture.factory.CreateClient(); }
/// <summary> /// Sets up environment for CRUD tests /// </summary> /// <param name="fixture">application context</param> /// <param name="output"></param> /// <returns></returns> public UserTests(TestsContextFixture fixture) : base(fixture, InvalidUserInput, ValidUserInput, UpdatedValidUserInput, "api/v1/users") { }
/// <summary> /// Gets the path to return the URL in api to post a review for given user /// </summary> /// <returns>The path to post new review for user in system</returns> private static string getReviewPostPath(TestsContextFixture fixture) => fixture.userUrls[0] + "/reviews/" + fixture.tapeIds[0];
/// <summary> /// Sets up environment for CRUD tests /// </summary> /// <param name="fixture">application context</param> /// <param name="output"></param> /// <returns></returns> public ReviewTests(TestsContextFixture fixture) : base(fixture, InvalidReviewInput, ValidReviewInput, UpdatedValidReviewInput, "api/v1/tapes/reviews", getReviewPostPath(fixture)) { }
/// <summary> /// Sets up environment for CRUD tests /// </summary> /// <param name="fixture">application context</param> /// <param name="output"></param> /// <returns></returns> public TapeTests(TestsContextFixture fixture) : base(fixture, InvalidTapeInput, ValidTapeInput, UpdatedValidTapeInput, "api/v1/tapes") { }