示例#1
0
文件: utils.ts 项目: zaksie/gotouch
 export var toProtoEntity = function (properties, json, overwrite = false) {
     let keys = Object.keys(json);
     _.forEach(keys, (key) => {
         let value = json[key], valueType, result;
         valueType = getValueType(value);
         if (valueType == 'listValue') {
             let values = _.map(value, (val) => {
                 let valType = getValueType(val);
                 return createAtomEntity(valType, val);
             });
             result = createAtomEntity(valueType, values);
         }
         else result = createAtomEntity(valueType, value);
         if (result && (overwrite || !properties[key]))
             properties[key] = result;
     });
 }
  const attachId = (node) => {
    if (node == null) return;

    if (isd3Node) {
      node.data.id = i;
    } else {
      node.id = i;
    }

    i += 1;

    const children = node.children || node._children;

    _.forEach(children, child => {
      attachId(child);
    });
  };
    private getSkillOrderEventsOfParticipant(match:any, participant:any) {
        let skillOrder = [];

        _.forEach(match.timeline.frames, (frame:any) => {
            if (!frame.hasOwnProperty('events') || frame.events === null) return;

            let skill = frame.events.filter((event:any) => {
                return (event.eventType === 'SKILL_LEVEL_UP') && (event.participantId === participant.participantId);
            });

            if (skill.length !== 0) {
                skillOrder = skillOrder.concat(skill);
            }
        });

        return skillOrder;
    }
 it('correctly collects contracts data', () => {
     const artifactsPath = path.resolve(__dirname, 'fixtures/artifacts');
     const sourcesPath = path.resolve(__dirname, 'fixtures/contracts');
     const networkId = 50;
     const contractsData = collectContractsData(artifactsPath, sourcesPath, networkId);
     _.forEach(contractsData, contractData => {
         expect(contractData).to.have.keys([
             'baseName',
             'sourceCodes',
             'sources',
             'sourceMap',
             'sourceMapRuntime',
             'bytecode',
             'runtimeBytecode',
         ]);
     });
 });
 _.forEach(members, (member) => {
   let rolenames = _.filter(_.values(member.roles), (rolename) => !_.isEmpty(rolename));
   if (rolenames.length > 0) {
     let roleScopes = _.keys(member.roles);
     _.forEach(roleScopes, (roleScope) => {
       groupRole.push({
         scope: roleScope,
         name: member.roles[roleScope]
       });
     });
     body.push({
       'id': member.id,
       'reference': member.reference,
       'roles': groupRole
     });
   }
 });
示例#6
0
    it('should be able to consumate games', (done) => {
        _.forEach(leagues, (league, idx) => {
            _.forEach(league.seasons, (season, idx2) => {
                _.forEach(season.games, (game, idx3) => {
                    let consumate_ticket = _.assign(game, {
                        home_team_final_score: random_score_gen(),
                        visitor_team_final_score: random_score_gen()
                    });
                    admin.consumate_game(consumate_ticket, (res) => {
                        c('\n res 393939', res);

                        if ((idx === leagues.length - 1) && (idx2 === league.seasons.length - 1) && (idx3 === season.games.length - 1)) {done();}
                    });
                });
            });
        });
    })
示例#7
0
    constructor(encodedTimeslot: number = 0) {
        if (encodedTimeslot < 0) {
            throw new Error('encodedTimeslot cannot be negative values');
        }

        const timeslotBinary = encodedTimeslot.toString(2);
        if (timeslotBinary.length > 24) {
            throw new Error('exceeded maximum value for encodedTimeslot');
        }

        const timeslots = _.map(_.range(0, 24), () => false);
        _.forEach(timeslotBinary.split('').reverse(), (value, index) => {
            timeslots[index] = (parseInt(value, 10) === 1);
        });

        this.timeslots = timeslots;
    }
示例#8
0
 it('init seasons', (done) => {
     _.forEach(leagues, (league, idx) => {
         _.forEach([1,2,3], (num) => {
             c();
             let season_ticket = season_ticket_factory(league.leagueZ);
             admin.init_season(season_ticket, (res) => {
                 c();
                 c(res);
                 c("Assert: res/ticket should have all these attributes, and result attribute should be 'okgood'");
                 let season = _.omit(res, ['']); //todo complete array of fields to omit
                 season.games = [];
                 league.seasons.push(season);
                 if ((idx === leagues.length - 1) && (num === 3)) {done();}
             });
         });
     });
 });
示例#9
0
文件: utils.ts 项目: zaksie/gotouch
    var filterAux = function (json) {
        var noEmptyEntries = true;
        _.forEach(json, (obj, key) => {
            if (typeof obj !== 'string'
                && typeof obj !== 'boolean'
                && typeof obj !== 'number') {

                if (typeof obj === 'undefined' || Object.keys(obj).length < 1) {
                    delete json[key];
                    noEmptyEntries = false;
                }
                else
                    noEmptyEntries = filterAux(obj) && noEmptyEntries;
            }
        });
        return noEmptyEntries;
    }
示例#10
0
    return this.awsRequest('/api/tsdb/query', request).then(res => {
      const data = [];

      if (res.results) {
        _.forEach(res.results, queryRes => {
          _.forEach(queryRes.series, series => {
            const s = { target: series.name, datapoints: series.points } as any;
            if (queryRes.meta.unit) {
              s.unit = queryRes.meta.unit;
            }
            data.push(s);
          });
        });
      }

      return { data: data };
    });