def route(self, r: Request):
        with r / None:
            return {"test": 1}

        with r / 'items':
            with r / Integer() as [item_index]:
                with r.get:
                    return self._inventory[item_index]

                with r.put:
                    item = r.entity(InventoryItem)
                    self._inventory[item_index] = item
                    return item

                with r.delete:
                    item = self._inventory[item_index]
                    del self._inventory[item_index]
                    return item

            with r.end:
                with r.get:
                    return self._inventory

                with r.post:
                    item = r.entity(InventoryItem)
                    self._inventory.append(item)
                    return item
    def handle_items(self, r: Request):
        with r / Integer as item_index:
            with r.get:
                return self._inventory[item_index]

            with r.put:
                item = r.entity(InventoryItem)
                self._inventory[item_index] = item
                return item

            with r.delete:
                item = self._inventory[item_index]
                del self._inventory[item_index]
                return item

        with r.end:
            with r.get:
                return self._inventory

            with r.post:
                item = r.entity(InventoryItem)
                self._inventory.append(item)
                return item
Exemple #3
0
def test_entity_without_path(test_input, obj_type, expected):
    r = Request(Request.POST,
                Url(path='/path'),
                content=test_input,
                unmarshaller=JSONUnmarshaller().unmarshall)
    assert expected == r.entity(obj_type)
 def route(self, r: Request):
     with r.post:
         item = r.entity(InventoryItem)
         self._inventory.append(item)
         return item