コード例 #1
0
def save_tile_ToRedis(tile_id, tile_template, data):  # pragma: no cover
    cache = getCache()
    tilePrefix = getRedisPrefix(tile_id)
    if not cache.redis.exists(tilePrefix) and DEBUG:  # if tile don't exist, create it with template, DEBUG mode only
        buildFakeDataFromTemplate(tile_id, tile_template, cache)
    cachedTile = json.loads(cache.redis.get(tilePrefix))
    cachedTile['data'] = update_tile_data_from_redis(cachedTile['data'], json.loads(data), tile_template)
    cachedTile['modified'] = getIsoTime()
    cachedTile['tile_template'] = tile_template
    cache.set(tilePrefix, json.dumps(cachedTile))
    return HttpResponse(f'{tile_id} data updated successfully.')
コード例 #2
0
ファイル: test.py プロジェクト: midayex/tipboard
    def test_0002_fake_data(self):
        """ Test fake_data generation """

        for tile in self.ALLOWED_TILES:
            if tile != 'text' and tile != 'empty':
                tileData = buildFakeDataFromTemplate(f'test_{tile}',
                                                     template_name=tile,
                                                     cache=None)
                self.assertTrue('meta' in tileData)
                self.assertTrue('data' in tileData)
                self.assertTrue('id' in tileData)
                self.assertTrue('tile_template' in tileData)
コード例 #3
0
 def update_tile_receive(self,
                         tile_id,
                         template_name=None):  # pragma: no cover
     """ Create or update the tile with value send  """
     tileData = cache.get(tile_id=getRedisPrefix(tile_id))
     if tileData is None:
         if LOG:
             print(f'{getTimeStr()} (-) No data in key {tile_id} on Redis.',
                   flush=True)
             print(
                 f'{getTimeStr()} (-) Generating fake data for {tile_id}.',
                 flush=True)
         data = buildFakeDataFromTemplate(tile_id, template_name, cache)
     else:
         data = json.loads(tileData)
     if isinstance(data, str):
         data = json.loads(data)
     self.send(text_data=json.dumps(data))