Example #1
0
    def test_get_count(self):
        """ Tests that Luggages class counts luggages correctly.

        :return:
        """
        luggages = Luggages()
        for luggage in self.luggage_list:
            luggages.add(luggage)
        self.assertEqual(luggages._get_count(), len(self.luggage_list))
Example #2
0
    def put(self, rideRequestId, uid):
        """
        Add luggage to the ride request.

        ---
        tags:
          - luggage
        parameters:
          - name: id
            in: path
            description: ID of the ride request associated with the luggages
            required: true
            # schema:
            #   $ref: "#/definitions/LuggageCollection"
        responses:
          '200':
            description: luggages response
            properties:
              newLuggageValues:
                type: array
                # items:
                  # $ref: "#/definitions/LuggageItem"

        :param rideRequestId:
        :param uid:
        :return:
        """
        # args = ride_request_parsers.luggage_parser.parse_args()

        json_input = request.get_json()

        # # Marshmallow version 3
        # try:
        #     data = luggages_schema.load(json_input)
        # except ValidationError as err:
        #     return {'errors': err.messages}, 422
        #

        # Marshmallow version 2
        try:
            data = luggages_schema.load(json_input)
        except ValidationError as error:
            return error.messages, 422

        luggage_list = data["luggages"]
        luggages = Luggages()
        luggages.add_from_list(luggage_list)

        # add_luggage_nontransactional(rideRequestId, luggages)
        luggage_actions.put_luggages(ride_request_id=rideRequestId,
                                     luggages=luggages)

        response_dict = {"newLuggageValues": luggages.to_dict()}

        return response_dict, 200
Example #3
0
 def test_init(self):
     """
     Tests that Luggages class initializes successfully with no argument
     :return:
     """
     luggages = Luggages()
     self.assertIsNotNone(luggages, msg="Luggages did not initialize. ")
Example #4
0
 def test_to_dict_two_pcs(self):
     luggages = Luggages()
     luggages._luggage_list = [self.luggage_list[0], self.luggage_list[1]]
     expected_dict = {
         "luggages": [
             {
                 "luggage_type": "large",
                 "weight_in_lbs": 20
             },
             {
                 "luggage_type": "medium",
                 "weight_in_lbs": 15
             }
         ],
         "total_weight": 35,
         "total_count": 2
     }
     self.assertDictEqual(expected_dict, luggages.to_dict(), "Luggages did not return correct dict")
Example #5
0
 def test_to_dict_one_pcs(self):
     """
     Tests that Luggages successfully returns dict with correct count and weight.
     :return:
     """
     luggages = Luggages()
     luggages._luggage_list = [self.luggage_list[0]]
     expected_dict = {
         "luggages": [
             {
                 "luggage_type": "large",
                 "weight_in_lbs": 20
             }
         ],
         "total_weight": 20,
         "total_count": 1
     }
     self.assertDictEqual(expected_dict, luggages.to_dict(), "Luggages did not return correct dict")
Example #6
0
    def put(self, rideRequestId, uid):
        """

        :param rideRequestId:
        :param uid:
        :return:
        """
        args = ride_request_parsers.luggage_parser.parse_args()

        luggage_list = args["luggages"]
        luggages = Luggages()
        luggages.add_from_list(luggage_list)

        # add_luggage_nontransactional(rideRequestId, luggages)
        luggage_actions.put_luggages(ride_request_id=rideRequestId,
                                     luggages=luggages)

        response_dict = {"newLuggageValues": luggages.to_dict()}

        return response_dict, 200
Example #7
0
 def test_from_dict(self):
     d = {
         "luggages": [
             {
                 "luggage_type": "large",
                 "weight_in_lbs": 20
             },
             {
                 "luggage_type": "medium",
                 "weight_in_lbs": 15
             }
         ],
         "total_weight": 35,
         "total_count": 2
     }
     luggages = Luggages.from_dict(d)
     self.assertListEqual(luggages._luggage_list, [self.luggage_list[0], self.luggage_list[1]])
Example #8
0
 def test_get_weight_one(self):
     luggages = Luggages()
     luggages.add(self.luggage_list[0])
     self.assertEqual(luggages._get_weight(), 20)
Example #9
0
 def test_get_count_one(self):
     luggages = Luggages()
     luggages.add(self.luggage_list[0])
     self.assertEqual(luggages._get_count(), 1)
Example #10
0
 def test_add_many(self):
     luggages = Luggages()
     for luggage in self.luggage_list:
         luggages.add(luggage)
     self.assertListEqual(luggages._luggage_list, self.luggage_list)
Example #11
0
 def test_add_one(self):
     luggages = Luggages()
     luggages.add(self.luggage_list[0])
     self.assertListEqual(luggages._luggage_list, [self.luggage_list[0]])