Individual Contribution Report 2 Simar Achmet Kechagia - bounswe/bounswe2023group3 GitHub Wiki

Important Issues Related to the Practice Application

  • #79: I have created my part of the practice application. I wrote an API and a front end. I also wrote tests for the application.
  • #112: I have contributed to the deployment of the application.
  • #109: After the deployment of our application, I tagged the last version of the app.

Third-Party URIs

  • I utilized the IBB MetroMobileV2 API. This API is provided by the Istanbul Metropolitan Municipality. You can find more information about the API here.
  • I have used the following API function:
  • Name: Get Ticket Prices, Route
  • Description: This API function returns the ticket prices for each public transport card type.

API Functions

I have created three endpoints. The endpoints are the following:

  • get_ticket_prices(GET): Route=/transportation/ticket-prices. This function makes an HTTP GET request to the IBB MetroMobileV2 API and parses the JSON response. After that it returns the ticket prices for each Istanbulkart type as JSON response again.
  • feedback_list(GET): Route=/transportation/feedbacks. This function returns the feedback submitted by users. It returns a JSON response.
  • feedback_list(POST): Route=/transportation/feedbacks. This function accepts a JSON payload. The payload is a Feedback object in JSON format. It should contains the user's name, user's email and his/her feedback message.

Unit Tests

There are three unit tests in total:

  • test_feedback_creation: This test sends an HTTP POST request to the feedback_list(POST) function with a test payload. The test checks if the feedback object was created and the method returned the appropriate response by checking the status code. It also checks if the saved test data is correct.
  • test_feedback_list: This test sends an HTTP GET request to the feedback_list(GET). The test checks if the request was successful.
  • test_external_api: This test sends an HTTP GET request to the get_ticket_prices(GET). The test checks if the request was successful. Screenshot from 2023-05-12 23-18-20

Sample API Calls:

  • You can check the Swagger Documentation of the practice app here. You can check my API calls under the transportation section.
  • I have tested my API functions by sending example requests with Postman.

Work Related To Release

  • I have contributed to the release of the application by helping the dockerization and deployment processes. Also I have tagged the application.