How to use hasKey method in Jest

Best JavaScript code snippet using jest

metrics.js

Source:metrics.js Github

copy

Full Screen

1import _ from "lodash";2import moment from "moment";3import { SemverCmp } from "./semver";4export var Metrics = {};5export var version = "";6export function Version(ver) { version = ver };7var metricFnc = (res, field1, field2) => {8 var points = [];9 var div = 1;10 if (SemverCmp(version, "0.9") > 0) {11 div = 1000;12 }13 _.forEach(res[0], (entries) => {14 _.forEach(entries, (entry) => {15 var value1 = 0, value2 = 0;16 if (field1 in entry) {17 value1 = entry[field1];18 }19 if (field2 in entry) {20 value2 = entry[field2];21 }22 var start = entry.Start;23 var last = entry.Last;24 if (div > 1) {25 start /= div;26 last /= div;27 }28 var value = (value1 + value2) / (last - start);29 points.push([value, moment(last, 'X').valueOf()]);30 });31 });32 return points;33}34var rttFnc = (res, field) => {35 var points = [];36 _.forEach(res[0], (entries) => {37 _.forEach(entries, (entry) => {38 var value = 0;39 if (field in entry) {40 value = entry[field];41 }42 var start = entry.Start / 1000;43 points.push([value, moment(start, 'X').valueOf()]);44 });45 });46 return _.sortBy(points, [function (v) { return v[1]; }]);47}48Metrics["Flow"] = {49 "Default": {50 "Name": "Flow",51 "Default": "Bytes",52 "MinVer": "0.1",53 "Fields": {54 "Packets": { Name: "Packets", Suffix: "Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "ABPackets", "BAPackets") } },55 "Bytes": { Name: "Bytes", Suffix: "Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "ABBytes", "BABytes") } },56 "ABPackets": { Name: "ABPackets", Suffix: "Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "ABPackets") } },57 "ABBytes": { Name: "ABBytes", Suffix: "Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "ABBytes") } },58 "BAPackets": { Name: "BAPackets", Suffix: "Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "ABBytes") } },59 "BABytes": { Name: "BABytes", Suffix: "Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "ABBytes") } },60 "RTT": { Name: "RTT", Suffix: "Metrics()", PointsFnc: (res) => { return rttFnc(res, "RTT") } },61 }62 }63}64Metrics["OpenFlow"] = {65 "Default": {66 "Name": "OpenFlow",67 "Default": "RxBytes",68 "MinVer": "0.23",69 "Fields": {70 "RxPackets": { Name: "Packets", Suffix: "Has('Type', 'ofrule').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxPackets") } },71 "RxBytes": { Name: "Bytes", Suffix: "Has('Type', 'ofrule').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxBytes") } },72 }73 }74}75Metrics["Interface"] = {76 "Default": {77 "Name": "Interface",78 "Default": "Bytes",79 "MinVer": "0.1",80 "Fields": {81 "Packets": { Name: "Packets", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxPackets", "TxPackets") } },82 "Bytes": { Name: "Bytes", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxBytes", "TxBytes") } },83 "Collisions": { Name: "Collisions", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "Collisions") } },84 "Multicast": { Name: "Multicast", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "Multicast") } },85 "RxBytes": { Name: "RxBytes", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxBytes") } },86 "RxCompressed": { Name: "RxCompressed", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxCompressed") } },87 "RxCrcErrors": { Name: "RxCrcErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxCrcErrors") } },88 "RxDropped": { Name: "RxDropped", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxDropped") } },89 "RxErrors": { Name: "RxErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxErrors") } },90 "RxFifoErrors": { Name: "RxFifoErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxFifoErrors") } },91 "RxFrameErrors": { Name: "RxFrameErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxFrameErrors") } },92 "RxLengthErrors": { Name: "RxLengthErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxLengthErrors") } },93 "RxMissedErrors": { Name: "RxMissedErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxMissedErrors") } },94 "RxOverErrors": { Name: "RxOverErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxOverErrors") } },95 "RxPackets": { Name: "RxPackets", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxPackets") } },96 "TxAbortedErrors": { Name: "TxAbortedErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxAbortedErrors") } },97 "TxBytes": { Name: "TxBytes", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxBytes") } },98 "TxCarrierErrors": { Name: "TxCarrierErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxCarrierErrors") } },99 "TxCompressed": { Name: "TxCompressed", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxCompressed") } },100 "TxDropped": { Name: "TxDropped", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxDropped") } },101 "TxHeartbeatErrors": { Name: "TxHeartbeatErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxHeartbeatErrors") } },102 "TxPackets": { Name: "TxPackets", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxPackets") } },103 "TxWindowErrors": { Name: "TxWindowErrors", Suffix: "HasKey('Metric').Metrics().Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxWindowErrors") } },104 }105 },106 "OpenvSwitch": {107 "Name": "OpenvSwitch",108 "Default": "Bytes",109 "MinVer": "0.23",110 "Fields": {111 "Packets": { Name: "Packets", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxPackets", "TxPackets") } },112 "Bytes": { Name: "Bytes", Suffix: "Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxBytes", "res.TxBytes") } },113 "Collisions": { Name: "Collisions", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "Collisions") } },114 "RxBytes": { Name: "RxBytes", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxBytes") } },115 "RxCrcErrors": { Name: "RxCrcErrors", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxCrcErrors") } },116 "RxDropped": { Name: "RxDropped", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxDropped") } },117 "RxErrors": { Name: "RxErrors", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxErrors") } },118 "RxFrameErrors": { Name: "RxFrameErrors", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxFrameErrors") } },119 "RxOverErrors": { Name: "RxOverErrors", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxOverErrors") } },120 "RxPackets": { Name: "RxPackets", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "RxPackets") } },121 "TxBytes": { Name: "TxBytes", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxBytes") } },122 "TxDropped": { Name: "TxDropped", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxDropped") } },123 "TxErrors": { Name: "TxErrors", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxErrors") } },124 "TxPackets": { Name: "TxPackets", Suffix: "HasKey('Ovs.Metric').Metrics('Ovs').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "TxPackets") } },125 }126 },127 "sFlow": {128 "Name": "sFlow",129 "Default": "IfInOctets",130 "MinVer": "0.23",131 "Fields": {132 "IfInOctets": { Name: "IfInOctets", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfInOctets") } },133 "IfInUcastPkts": { Name: "IfInUcastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfInUcastPkts") } },134 "IfInMulticastPkts": { Name: "IfInMulticastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfInMulticastPkts") } },135 "IfInBroadcastPkts": { Name: "IfInBroadcastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfInBroadcastPkts") } },136 "IfInDiscards": { Name: "IfInDiscards", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfInDiscards") } },137 "IfInErrors": { Name: "IfInErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfInErrors") } },138 "IfInUnknownProtos": { Name: "IfInUnknownProtos", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfInUnknownProtos") } },139 "IfOutOctets": { Name: "IfOutOctets", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfOutOctets") } },140 "IfOutUcastPkts": { Name: "IfOutUcastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfOutUcastPkts") } },141 "IfOutMulticastPkts": { Name: "IfOutMulticastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfOutMulticastPkts") } },142 "IfOutBroadcastPkts": { Name: "IfOutBroadcastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfOutBroadcastPkts") } },143 "IfOutDiscards": { Name: "IfOutDiscards", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfOutDiscards") } },144 "IfOutErrors": { Name: "IfOutErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "IfOutErrors") } },145 "OvsdpNHit": { Name: "OvsdpNHit", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsdpNHit") } },146 "OvsdpNMissed": { Name: "OvsdpNMissed", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsdpNMissed") } },147 "OvsdpNLost": { Name: "OvsdpNLost", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsdpNLost") } },148 "OvsdpNMaskHit": { Name: "OvsdpNMaskHit", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsdpNMaskHit") } },149 "OvsdpNFlows": { Name: "OvsdpNFlows", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsdpNFlows") } },150 "OvsdpNMasks": { Name: "OvsdpNMasks", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsdpNMasks") } },151 "OvsAppFdOpen": { Name: "OvsAppFdOpen", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsAppFdOpen") } },152 "OvsAppFdMax": { Name: "OvsAppFdMax", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsAppFdMax") } },153 "OvsAppConnOpen": { Name: "OvsAppConnOpen", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsAppConnOpen") } },154 "OvsAppConnMax": { Name: "OvsAppConnMax", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsAppConnMax") } },155 "OvsAppMemUsed": { Name: "OvsAppMemUsed", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsAppMemUsed") } },156 "OvsAppMemMax": { Name: "OvsAppMemMax", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "OvsAppMemMax") } },157 "VlanOctets": { Name: "VlanOctets", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "VlanOctets") } },158 "VlanUcastPkts": { Name: "VlanUcastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "VlanUcastPkts") } },159 "VlanMulticastPkts": { Name: "VlanMulticastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "VlanMulticastPkts") } },160 "VlanBroadcastPkts": { Name: "VlanBroadcastPkts", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "VlanBroadcastPkts") } },161 "VlanDiscards": { Name: "VlanDiscards", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "VlanDiscards") } },162 "EthAlignmentErrors": { Name: "EthAlignmentErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthAlignmentErrors") } },163 "EthFCSErrors": { Name: "EthFCSErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthFCSErrors") } },164 "EthSingleCollisionFrames": { Name: "EthSingleCollisionFrames", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthSingleCollisionFrames") } },165 "EthMultipleCollisionFrames": { Name: "EthMultipleCollisionFrames", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthMultipleCollisionFrames") } },166 "EthSQETestErrors": { Name: "EthSQETestErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthSQETestErrors") } },167 "EthDeferredTransmissions": { Name: "EthDeferredTransmissions", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthDeferredTransmissions") } },168 "EthLateCollisions": { Name: "EthLateCollisions", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthLateCollisions") } },169 "EthExcessiveCollisions": { Name: "EthExcessiveCollisions", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthExcessiveCollisions") } },170 "EthInternalMacReceiveErrors": { Name: "EthInternalMacReceiveErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthInternalMacReceiveErrors") } },171 "EthInternalMacTransmitErrors": { Name: "EthInternalMacTransmitErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthInternalMacTransmitErrors") } },172 "EthCarrierSenseErrors": { Name: "EthCarrierSenseErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthCarrierSenseErrors") } },173 "EthFrameTooLongs": { Name: "EthFrameTooLongs", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthFrameTooLongs") } },174 "EthSymbolErrors": { Name: "EthSymbolErrors", Suffix: "HasKey('SFlow').Metrics('SFlow').Aggregates()", PointsFnc: (res) => { return metricFnc(res, "EthSymbolErrors") } },175 }176 }177}178export function TypeByKeys(keys) {179 if (keys.indexOf("Filters") >= 0 && keys.indexOf("Actions") >= 0) {180 return "OpenFlow";181 } else if (keys.indexOf("TrackingID") >= 0) {182 return "Flow";183 } else {184 return "Interface";185 }186 return {}...

Full Screen

Full Screen

decoder.js

Source:decoder.js Github

copy

Full Screen

1'use strict';2var Map = require("./map");3var Entity = require("./entity");4var NeonError = require('./error');5function Result() {6 this.key = 0;7 this.value = null;8 this.add = function (key, value) {9 if (this.value === null) {10 this.value = new Map();11 }12 return this.value.add(key, value);13 };14}15function decoder(output) {16 if (typeof output === "undefined") {17 output = decoder.MAP;18 }19 /** @var array */20 this.tokens = [];21 /** @var int */22 this.pos = 0;23 this.input = "";24 /**25 * Decodes a NEON string.26 * @param input string27 * @return mixed28 */29 this.decode = function (input) {30 if (typeof (input) != "string") {31 throw 'Argument must be a string, ' + typeof input + ' given.';32 } else if (input.substr(0, 3) == "\xEF\xBB\xBF") { // BOM33 input = input.substr(3);34 }35 this.input = "\n" + "" + input.replace(/\r\n/g, "\n"); // \n forces indent detection36 var regexp = new RegExp('(' + "" + decoder.patterns.join(')|(') + "" + ')', 'mig');37 this.tokens = this.split(regexp, this.input);38 var last = this.tokens[this.tokens.length - 1];39 if (this.tokens && !regexp.test(last[0])) {40 this.pos = this.tokens.length - 1;41 this.error();42 }43 this.pos = 0;44 var res = this.parse(null);45 while ((this.tokens[this.pos])) {46 if (this.tokens[this.pos][0][0] === "\n") {47 this.pos++;48 } else {49 this.error();50 }51 }52 var flatten = function (res) {53 if (res instanceof Result) {54 return flatten(res.value);55 } else if (res instanceof Entity) {56 res.attributes = flatten(res.attributes);57 res.value = flatten(res.value);58 } else if (res instanceof Map) {59 if (output === decoder.FORCE_OBJECT) {60 var obj = {};61 res.forEach(function (key, value) {62 obj[key] = flatten(value);63 });64 return obj;65 } else {66 var result = new Map;67 var isList = true;68 var cmp = 0;69 res.forEach(function (key, value) {70 result.set(key, flatten(value));71 if (key !== cmp++) {72 isList = false;73 }74 });75 if (output === decoder.MAP) {76 return result;77 } else {78 return isList ? result.values() : result.toObject();79 }80 }81 }82 return res;83 };84 return flatten(res);85 };86 /**87 * @param indent string indentation (for block-parser)88 * @param key mixed89 * @param hasKey bool90 * @return array91 */92 this.parse = function (indent, defaultValue, key, hasKey) {93 if (typeof key === "undefined") {94 key = null;95 }96 if (typeof defaultValue === "undefined") {97 defaultValue = null;98 }99 if (typeof hasKey === "undefined") {100 hasKey = false;101 }102 var result = new Result();103 result.value = defaultValue;104 var inlineParser = indent === false;105 var value = null;106 var hasValue = false;107 var tokens = this.tokens;108 var count = tokens.length;109 var mainResult = result;110 for (; this.pos < count; this.pos++) {111 var t = tokens[this.pos][0];112 if (t === ',') { // ArrayEntry separator113 if ((!hasKey && !hasValue) || !inlineParser) {114 this.error();115 }116 this.addValue(result, hasKey ? key : null, hasValue ? value : null);117 hasKey = hasValue = false;118 } else if (t === ':' || t === '=') { // KeyValuePair separator119 if (hasValue && (typeof value == "object")) {120 this.error('Unacceptable key');121 } else if (hasKey && key == null && hasValue && !inlineParser) {122 this.pos++;123 this.addValue(result, null, this.parse(indent + "" + ' ', new Map(), value, true));124 var newIndent = (typeof tokens[this.pos] !== "undefined" && typeof tokens[this.pos + 1] !== "undefined") ? tokens[this.pos][0].substr(1) : ''; // not last125 if (newIndent.length > indent.length) {126 this.pos++;127 this.error('Bad indentation');128 } else if (newIndent.length < indent.length) {129 return mainResult; // block parser exit point130 }131 hasKey = hasValue = false;132 } else if (hasKey || !hasValue) {133 this.error();134 } else {135 key = value;136 hasKey = true;137 hasValue = false;138 result = mainResult;139 }140 } else if (t === '-') { // BlockArray bullet141 if (hasKey || hasValue || inlineParser) {142 this.error();143 }144 key = null;145 hasKey = true;146 } else if ((decoder.brackets[t])) { // Opening bracket [ ( {147 if (hasValue) {148 if (t !== '(') {149 this.error();150 }151 this.pos++;152 if (value instanceof Entity && value.value === decoder.CHAIN) {153 value.attributes.value.last().value.attributes = this.parse(false, new Map());154 } else {155 value = new Entity(value, this.parse(false, new Map()));156 }157 } else {158 this.pos++;159 value = this.parse(false, new Map());160 }161 hasValue = true;162 if (tokens[this.pos] === undefined || tokens[this.pos][0] !== decoder.brackets[t]) { // unexpected type of bracket or block-parser163 this.error();164 }165 } else if (t === ']' || t === '}' || t === ')') { // Closing bracket ] ) }166 if (!inlineParser) {167 this.error();168 }169 break;170 } else if (t[0] === "\n") { // Indent171 if (inlineParser) {172 if (hasKey || hasValue) {173 this.addValue(result, hasKey ? key : null, hasValue ? value : null);174 hasKey = hasValue = false;175 }176 } else {177 while (tokens[this.pos + 1] !== undefined && tokens[this.pos + 1][0][0] === "\n") {178 this.pos++; // skip to last indent179 }180 if (tokens[this.pos + 1] === undefined) {181 break;182 }183 newIndent = tokens[this.pos][0].substr(1);184 if (indent === null) { // first iteration185 indent = newIndent;186 }187 var minlen = Math.min(newIndent.length, indent.length);188 if (minlen && newIndent.substr(0, minlen) !== indent.substr(0, minlen)) {189 this.pos++;190 this.error('Invalid combination of tabs and spaces');191 }192 if (newIndent.length > indent.length) { // open new block-array or hash193 if (hasValue || !hasKey) {194 this.pos++;195 this.error('Bad indentation');196 }197 this.addValue(result, key, this.parse(newIndent, new Map));198 newIndent = (tokens[this.pos] !== undefined && tokens[this.pos + 1] !== undefined) ? tokens[this.pos][0].substr(1) : ''; // not last199 if (newIndent.length > indent.length) {200 this.pos++;201 this.error('Bad indentation');202 }203 hasKey = false;204 } else {205 if (hasValue && !hasKey) { // block items must have "key"; NULL key means list item206 break;207 } else if (hasKey) {208 this.addValue(result, key, hasValue ? value : null);209 if (key !== null && !hasValue && newIndent === indent && typeof tokens[this.pos + 1] !== "undefined" && tokens[this.pos + 1][0] === "-") {210 result.value.set(key, new Result);211 result = result.value.get(key);212 }213 hasKey = hasValue = false;214 }215 }216 if (newIndent.length < indent.length) { // close block217 return mainResult; // block parser exit point218 }219 }220 } else if (hasValue) { // Value221 if (value instanceof Entity) { // Entity chaining222 if (value.value !== decoder.CHAIN) {223 var attributes = new Result();224 attributes.add(null, value);225 value = new Entity(decoder.CHAIN, attributes);226 }227 value.attributes.add(null, new Entity(t));228 } else {229 this.error();230 }231 } else { // Value232 if (typeof this.parse.consts == 'undefined')233 this.parse.consts = {234 'true': true, 'True': true, 'TRUE': true, 'yes': true, 'Yes': true, 'YES': true, 'on': true, 'On': true, 'ON': true,235 'false': false, 'False': false, 'FALSE': false, 'no': false, 'No': false, 'NO': false, 'off': false, 'Off': false, 'OFF': false,236 'null': 0, 'Null': 0, 'NULL': 0237 };238 if (t[0] === '"') {239 var self = this;240 value = t.substr(1, t.length - 2).replace(/\\(?:u[0-9a-f]{4}|x[0-9a-f]{2}|.)/gi, function (match) {241 var mapping = {'t': "\t", 'n': "\n", 'r': "\r", 'f': "\x0C", 'b': "\x08", '"': '"', '\\': '\\', '/': '/', '_': "\xc2\xa0"};242 if (mapping[match[1]] !== undefined) {243 return mapping[match[1]];244 } else if (match[1] === 'u' && match.length === 6) {245 return String.fromCharCode(parseInt(match.substr(2), 16));246 } else if (match[1] === 'x' && match.length === 4) {247 return String.fromCharCode(parseInt(match.substr(2), 16));248 } else {249 self.error("Invalid escaping sequence " + match + "");250 }251 });252 } else if (t[0] === "'") {253 value = t.substr(1, t.length - 2);254 } else if (typeof this.parse.consts[t] !== "undefined"255 && (typeof tokens[this.pos + 1] === "undefined" || (typeof tokens[this.pos + 1] !== "undefined" && tokens[this.pos + 1][0] !== ':' && tokens[this.pos + 1][0] !== '='))) {256 value = this.parse.consts[t] === 0 ? null : this.parse.consts[t];257 } else if (!isNaN(t)) {258 value = t * 1;259 } else if (t.match(/^\d\d\d\d-\d\d?-\d\d?(?:(?:[Tt]| +)\d\d?:\d\d:\d\d(?:\.\d*)? *(?:Z|[-+]\d\d?(?::\d\d)?)?)?$/)) {260 value = new Date(t);261 } else { // literal262 value = t;263 }264 hasValue = true;265 }266 }267 if (inlineParser) {268 if (hasKey || hasValue) {269 this.addValue(result, hasKey ? key : null, hasValue ? value : null);270 }271 } else {272 if (hasValue && !hasKey) { // block items must have "key"273 if (result.value === null || (result.value instanceof Map && result.value.length == 0)) { //if empty274 return value; // simple value parser275 } else {276 this.error();277 }278 } else if (hasKey) {279 this.addValue(result, key, hasValue ? value : null);280 }281 }282 return mainResult;283 };284 this.addValue = function (result, key, value) {285 if (result.add(key, value) === false) {286 this.error("Duplicated key '" + key + "'");287 }288 };289 this.error = function (message) {290 if (typeof message === "undefined") {291 message = "Unexpected '%s'";292 }293 var last = this.tokens[this.pos] !== undefined ? this.tokens[this.pos] : null;294 var offset = last ? last[1] : this.input.length;295 var text = this.input.substr(0, offset);296 var line = text.split("\n").length - 1;297 var col = offset - ("\n" + "" + text).lastIndexOf("\n") + 1;298 var token = last ? last[0].substr(0, 40).replace("\n", '<new line>') : 'end';299 throw new NeonError(message.replace("%s", token), line, col);300 };301 this.split = function (pattern, subject) {302 /*303 Copyright (c) 2013 Kevin van Zonneveld (http://kvz.io)304 and Contributors (http://phpjs.org/authors)305 LICENSE: https://github.com/kvz/phpjs/blob/master/LICENSE.txt306 */307 var result, ret = [], index = 0, i = 0;308 var _filter = function (str, strindex) {309 if (!str.length) {310 return;311 }312 str = [str, strindex];313 ret.push(str);314 };315 // Exec the pattern and get the result316 while (result = pattern.exec(subject)) {317 // Take the correct portion of the string and filter the match318 _filter(subject.slice(index, result.index), index);319 index = result.index + result[0].length;320 // Convert the regexp result into a normal array321 var resarr = Array.prototype.slice.call(result);322 for (i = 1; i < resarr.length; i++) {323 if (result[i] !== undefined) {324 _filter(result[i], result.index + result[0].indexOf(result[i]));325 }326 }327 }328 // Filter last match329 _filter(subject.slice(index, subject.length), index);330 return ret;331 }332}333decoder.patterns = [334 "'[^'\\n]*'|\"(?:\\\\.|[^\"\\\\\\n])*\"",335 "(?:[^\\x00-\\x20#\"',:=[\\]{}()!`-]|[:-][^\"',\\]})\\s])(?:[^\\x00-\\x20,:=\\]})(]+|:(?![\\s,\\]})]|$)|[\\ \\t]+[^\\x00-\\x20#,:=\\]})(])*",336 "[,:=[\\]{}()-]",337 "?:\\#.*",338 "\\n[\\t\\ ]*",339 "?:[\\t\\ ]+"];340decoder.brackets = {341 '[': ']',342 '{': '}',343 '(': ')'344};345decoder.CHAIN = '!!chain';346decoder.MAP = 'map';347decoder.AUTO = 'auto';348decoder.FORCE_OBJECT = 'object';...

Full Screen

Full Screen

i18n.js

Source:i18n.js Github

copy

Full Screen

1// translate router.meta.title, be used in breadcrumb sidebar tagsview2export function generateTitle(title) {3 const hasKey = this.$te('route.' + title)4 const translatedTitle = this.$t('route.' + title) // $t :this method from vue-i18n, inject in @/lang/index.js5 if (hasKey) {6 return translatedTitle7 }8 return title9}10export function generateNavbar(title) {11 const hasKey = this.$te('navbar.' + title)12 const translatedTitle = this.$t('navbar.' + title) // $t :this method from vue-i18n, inject in @/lang/index.js13 if (hasKey) {14 return translatedTitle15 }16 return title17}18// 底部19export function generateFooter(title) {20 const hasKey = this.$te('footer.' + title)21 const translatedTitle = this.$t('footer.' + title) // $t :this method from vue-i18n, inject in @/lang/index.js22 if (hasKey) {23 return translatedTitle24 }25 return title26}27// 首页28export function generateDashboard(title) {29 const hasKey = this.$te('dashboard.' + title)30 const translatedTitle = this.$t('dashboard.' + title)31 if (hasKey) {32 return translatedTitle33 }34 return title35}36// 矿机37export function generateMiner(title) {38 const hasKey = this.$te('miner.' + title)39 const translatedTitle = this.$t('miner.' + title)40 if (hasKey) {41 return translatedTitle42 }43 return title44}45// 公告中心46export function generateNoticeCenter(title) {47 const hasKey = this.$te('noticeCenter.' + title)48 const translatedTitle = this.$t('noticeCenter.' + title)49 if (hasKey) {50 return translatedTitle51 }52 return title53}54// 更多公告55export function generateNoticeMore(title) {56 const hasKey = this.$te('noticeMore.' + title)57 const translatedTitle = this.$t('noticeMore.' + title)58 if (hasKey) {59 return translatedTitle60 }61 return title62}63// 公告详情64export function generateNoticeDetail(title) {65 const hasKey = this.$te('noticeDetail.' + title)66 const translatedTitle = this.$t('noticeDetail.' + title)67 if (hasKey) {68 return translatedTitle69 }70 return title71}72// 帮助中心73export function generateHelpCenter(title) {74 const hasKey = this.$te('helpCenter.' + title)75 const translatedTitle = this.$t('helpCenter.' + title)76 if (hasKey) {77 return translatedTitle78 }79 return title80}81// 更多帮助82export function generateHelpMore(title) {83 const hasKey = this.$te('helpMore.' + title)84 const translatedTitle = this.$t('helpMore.' + title)85 if (hasKey) {86 return translatedTitle87 }88 return title89}90// 帮助详情91export function generateHelpDetail(title) {92 const hasKey = this.$te('helpDetail.' + title)93 const translatedTitle = this.$t('helpDetail.' + title)94 if (hasKey) {95 return translatedTitle96 }97 return title98}99// 注册100export function generateRegister(title) {101 const hasKey = this.$te('register.' + title)102 const translatedTitle = this.$t('register.' + title)103 if (hasKey) {104 return translatedTitle105 }106 return title107}108// 注册(账号激活)109export function generateAccountActivation(title) {110 const hasKey = this.$te('accountActivation.' + title)111 const translatedTitle = this.$t('accountActivation.' + title)112 if (hasKey) {113 return translatedTitle114 }115 return title116}117// 注册(激活验证)118export function generateActivationSuccess(title) {119 const hasKey = this.$te('activationSuccess.' + title)120 const translatedTitle = this.$t('activationSuccess.' + title)121 if (hasKey) {122 return translatedTitle123 }124 return title125}126// 登录127export function generateLogin(title) {128 const hasKey = this.$te('login.' + title)129 const translatedTitle = this.$t('login.' + title)130 if (hasKey) {131 return translatedTitle132 }133 return title134}135// 找回密码136export function generateForgetPassword(title) {137 const hasKey = this.$te('forgetPassword.' + title)138 const translatedTitle = this.$t('forgetPassword.' + title)139 if (hasKey) {140 return translatedTitle141 }142 return title143}144// 找回密码(重置邮件)145export function generateMailForget(title) {146 const hasKey = this.$te('mailForget.' + title)147 const translatedTitle = this.$t('mailForget.' + title)148 if (hasKey) {149 return translatedTitle150 }151 return title152}153// 找回密码(重置密码)154export function generateMailResetPassword(title) {155 const hasKey = this.$te('mailResetPassword.' + title)156 const translatedTitle = this.$t('mailResetPassword.' + title)157 if (hasKey) {158 return translatedTitle159 }160 return title161}162// 找回密码(重置密码成功)163export function generateMailForgetSuccess(title) {164 const hasKey = this.$te('mailForgetSuccess.' + title)165 const translatedTitle = this.$t('mailForgetSuccess.' + title)166 if (hasKey) {167 return translatedTitle168 }169 return title170}171// APP下载172export function generateAppDownload(title) {173 const hasKey = this.$te('appDownload.' + title)174 const translatedTitle = this.$t('appDownload.' + title)175 if (hasKey) {176 return translatedTitle177 }178 return title179}180// 分页组件181export function generatePages(title) {182 const hasKey = this.$te('Pages.' + title)183 const translatedTitle = this.$t('Pages.' + title)184 if (hasKey) {185 return translatedTitle186 }187 return title188}189// 区号选择组件190export function generateZoneDialog(title) {191 const hasKey = this.$te('ZoneDialog.' + title)192 const translatedTitle = this.$t('ZoneDialog.' + title)193 if (hasKey) {194 return translatedTitle195 }196 return title197}198export function generateTrade(title) {199 const hasKey = this.$te('trade.' + title)200 const translatedTitle = this.$t('trade.' + title)201 if (hasKey) {202 return translatedTitle203 }204 return title205}206export function generateUser(title) {207 const hasKey = this.$te('userCenter.' + title)208 const translatedTitle = this.$t('userCenter.' + title)209 if (hasKey) {210 return translatedTitle211 }212 return title213}214// 我的资产215export function generateAssetManagement(title) {216 const hasKey = this.$te('assetManagement.' + title)217 const translatedTitle = this.$t('assetManagement.' + title)218 if (hasKey) {219 return translatedTitle220 }221 return title222}223export function generateMyPower(title) {224 const hasKey = this.$te('myPower.' + title)225 const translatedTitle = this.$t('myPower.' + title)226 if (hasKey) {227 return translatedTitle228 }229 return title230}231export function generateUserChild(title) {232 const hasKey = this.$te('userCenterChild.' + title)233 const translatedTitle = this.$t('userCenterChild.' + title)234 if (hasKey) {235 return translatedTitle236 }237 return title238}239export function generateCurrententrust(title) {240 const hasKey = this.$te('currententrust.' + title)241 const translatedTitle = this.$t('currententrust.' + title)242 if (hasKey) {243 return translatedTitle244 }245 return title246}247// 充提记录248export function generateRechargeRecord(title) {249 const hasKey = this.$te('rechargeRecord.' + title)250 const translatedTitle = this.$t('rechargeRecord.' + title)251 if (hasKey) {252 return translatedTitle253 }254 return title255}256export function generateHistoryentrust(title) {257 const hasKey = this.$te('historyentrust.' + title)258 const translatedTitle = this.$t('historyentrust.' + title)259 if (hasKey) {260 return translatedTitle261 }262 return title263}264export function generateTransacation(title) {265 const hasKey = this.$te('transacation.' + title)266 const translatedTitle = this.$t('transacation.' + title)267 if (hasKey) {268 return translatedTitle269 }270 return title271}272// 添加地址273export function generatepresentAddr(title) {274 const hasKey = this.$te('presentAddr.' + title)275 const translatedTitle = this.$t('presentAddr.' + title)276 if (hasKey) {277 return translatedTitle278 }279 return title280}281// 平台分红282export function generateAllocationPlatform(title) {283 const hasKey = this.$te('allocationPlatform.' + title)284 const translatedTitle = this.$t('allocationPlatform.' + title)285 if (hasKey) {286 return translatedTitle287 }288 return title289}290// 回馈累积291export function generateAllocationFeedback(title) {292 const hasKey = this.$te('allocationFeedback.' + title)293 const translatedTitle = this.$t('allocationFeedback.' + title)294 if (hasKey) {295 return translatedTitle296 }297 return title298}299// 分红累积300export function generateAllocationShare(title) {301 const hasKey = this.$te('allocationShare.' + title)302 const translatedTitle = this.$t('allocationShare.' + title)303 if (hasKey) {304 return translatedTitle305 }306 return title307}308// 红人榜309export function generateAllocationRanking(title) {310 const hasKey = this.$te('allocationRanking.' + title)311 const translatedTitle = this.$t('allocationRanking.' + title)312 if (hasKey) {313 return translatedTitle314 }315 return title316}317// 余额宝318export function generateRemainderArea(title) {319 const hasKey = this.$te('remainderArea.' + title)320 const translatedTitle = this.$t('remainderArea.' + title)321 if (hasKey) {322 return translatedTitle323 }324 return title325}326// 锁仓327export function generateLockedPosition(title) {328 const hasKey = this.$te('lockedPosition.' + title)329 const translatedTitle = this.$t('lockedPosition.' + title)330 if (hasKey) {331 return translatedTitle332 }333 return title334}335// 锁仓记录336export function generateLockRecord(title) {337 const hasKey = this.$te('lockRecord.' + title)338 const translatedTitle = this.$t('lockRecord.' + title)339 if (hasKey) {340 return translatedTitle341 }342 return title343}344// 法币交易345export function generateFaitTrade(title) {346 const hasKey = this.$te('faitTrade.' + title)347 const translatedTitle = this.$t('faitTrade.' + title)348 if (hasKey) {349 return translatedTitle350 }351 return title352}353// 个人流水354export function generatePersonalFlow(title) {355 const hasKey = this.$te('personalFlowPage.' + title)356 const translatedTitle = this.$t('personalFlowPage.' + title)357 if (hasKey) {358 return translatedTitle359 }360 return title361}362// 统计363export function generateState(title) {364 const hasKey = this.$te('stats.' + title)365 const translatedTitle = this.$t('stats.' + title)366 if (hasKey) {367 return translatedTitle368 }369 return title370}...

Full Screen

Full Screen

pushNotifier.js

Source:pushNotifier.js Github

copy

Full Screen

...13 it('starts', Mocker.mockIt(function(mokr){14 mokr.mock(config, 'endpoint', 'dum');15 var pn = new PushNotifier(config);16 return pn.trad.reload().then(x=>{17 assert(pn.trad.hasKey('NOTIF_NEW_NOTE_CAMPUS', 'fr'));18 assert(pn.trad.hasKey('LYYTI_STATE_ANSWERED', 'fr'));19 assert(pn.trad.hasKey('LYYTI_STATE_CLOSED', 'fr'));20 assert(pn.trad.hasKey('LYYTI_STATE_ONGOING', 'fr'));21 assert(pn.trad.hasKey('LYYTI_STATE_OPENED', 'fr'));22 assert(pn.trad.hasKey('LYYTI_STATE_READ', 'fr'));23 assert(pn.trad.hasKey('LYYTI_STATE_RESOLVED', 'fr'));24 assert(pn.trad.hasKey('LYYTI_STATE_STANDBY', 'fr'));25 assert(pn.trad.hasKey('NOTIF_LYYTI_FOLLOWED_COMMENT', 'fr'));26 assert(pn.trad.hasKey('NOTIF_LYYTI_STATUS_CHANGED', 'fr'));27 assert(pn.trad.hasKey('NOTIF_MGR_ANSWER', 'fr'));28 assert(pn.trad.hasKey('NOTIF_MGR_ANSWER_PRIVATE_LYYTI', 'fr'));29 assert(pn.trad.hasKey('NOTIF_MODERATED_LYYTI', 'fr'));30 assert(pn.trad.hasKey('NOTIF_NEW_COMMENT', 'fr'));31 assert(pn.trad.hasKey('NOTIF_NEW_DOCUMENT_BUILDING', 'fr'));32 assert(pn.trad.hasKey('NOTIF_NEW_DOCUMENT_CAMPUS', 'fr'));33 assert(pn.trad.hasKey('NOTIF_NEW_DOCUMENT_CITY', 'fr'));34 assert(pn.trad.hasKey('NOTIF_NEW_DOCUMENT_FLAT', 'fr'));35 assert(pn.trad.hasKey('NOTIF_NEW_FLAT_ISSUE', 'fr'));36 assert(pn.trad.hasKey('NOTIF_NEW_ISSUE_BUILDING', 'fr'));37 assert(pn.trad.hasKey('NOTIF_NEW_MESSAGE', 'fr'));38 assert(pn.trad.hasKey('NOTIF_NEW_MESSAGE_ON_LYYTI', 'fr'));39 assert(pn.trad.hasKey('NOTIF_NEW_NOTE_BUILDING', 'fr'));40 assert(pn.trad.hasKey('NOTIF_NEW_NOTE_CAMPUS', 'fr'));41 assert(pn.trad.hasKey('NOTIF_NEW_NOTE_CITY', 'fr'));42 assert(pn.trad.hasKey('NOTIF_NEW_NOTE_FLAT', 'fr'));43 assert(pn.trad.hasKey('NOTIF_NEW_OFFER_BUILDING', 'fr'));44 assert(pn.trad.hasKey('NOTIF_NEW_TOPIC_BUILDING', 'fr'));45 assert(pn.trad.hasKey('NOTIF_NEW_USER_BUILDING', 'fr'));46 assert(pn.trad.hasKey('NOTIF_NEW_VOTE_CITY', 'fr'));47 assert(pn.trad.hasKey('NOTIF_NEW_WORK_BUILDING', 'fr'));48 assert(pn.trad.hasKey('NOTIF_NEW_WORK_CAMPUS', 'fr'));49 assert(pn.trad.hasKey('NOTIF_NEW_WORK_CITY', 'fr'));50 assert(pn.trad.hasKey('NOTIF_NEW_WORK_FLAT', 'fr'));51 })52 }));53 it('replaces states', Mocker.mockIt(function(mokr){54 mokr.mock(config, 'endpoint', 'dum');55 var pn = new PushNotifier(config);56 return pn.trad.reload().then(_=>{57 var x = pn.trad.translate('NOTIF_LYYTI_STATUS_CHANGED', 'fr', {"title":"test asset","state":"OPENED"});58 assert.equal(x, 'Le statut de test asset est passé à Ouvert');59 })60 }));61 it('replaces alert obj with str', Mocker.mockIt(function(mokr){62 mokr.mock(config, 'endpoint', 'dum');63 var pn = new PushNotifier(config);64 mokr.mock(pn.trad, 'getLanguages', ()=>['fr','en'])...

Full Screen

Full Screen

Variables.js

Source:Variables.js Github

copy

Full Screen

1#pragma strict2static var Coins : float;3static var Diamo : float;4static var Done : boolean;5static var Intro : boolean;6static var Pause : boolean;7static var FirstLoad : boolean;8static var Tutorial : boolean;9static var OptionO : boolean;10static var SocialBo : boolean;11static var ResetOp : boolean;12static var ResetSure : boolean;13static var TPause : boolean;14static var Movement : boolean;15static var Debugger : boolean;16static var InsCount : int;17function Start () 18{19 DontDestroyOnLoad(this);20 Setup();21 FirstLoad = true;22 Tutorial = false;23 Screen.sleepTimeout = SleepTimeout.NeverSleep;24 InsCount = 0;25}26function Update () 27{28}29static function Setup()30{31 if(!PlayerPrefs.HasKey("NoAds"))32 {33 PlayerPrefs.SetInt("NoAds",0);34 }35 if(!PlayerPrefs.HasKey("FreeAds"))36 {37 PlayerPrefs.SetInt("FreeAds",1);38 }39 if(!PlayerPrefs.HasKey("Sound"))40 {41 PlayerPrefs.SetInt("Sound",1);42 }43 if(!PlayerPrefs.HasKey("Tutorial"))44 {45 PlayerPrefs.SetInt("Tutorial",0);46 }47 if(!PlayerPrefs.HasKey("UTutorial"))48 {49 PlayerPrefs.SetInt("UTutorial",0);50 }51 if(!PlayerPrefs.HasKey("Slot1"))52 {53 PlayerPrefs.SetInt("Slot1",1);54 }55 if(!PlayerPrefs.HasKey("Slot2"))56 {57 PlayerPrefs.SetInt("Slot2",0);58 }59 if(!PlayerPrefs.HasKey("Slot3"))60 {61 PlayerPrefs.SetInt("Slot3",0);62 }63 if(!PlayerPrefs.HasKey("Slot4"))64 {65 PlayerPrefs.SetInt("Slot4",0);66 }67 if(!PlayerPrefs.HasKey("Slot5"))68 {69 PlayerPrefs.SetInt("Slot5",0);70 }71 if(!PlayerPrefs.HasKey("Slot6"))72 {73 PlayerPrefs.SetInt("Slot6",0);74 }75 if(!PlayerPrefs.HasKey("Slot7"))76 {77 PlayerPrefs.SetInt("Slot7",0);78 }79 if(!PlayerPrefs.HasKey("Slot8"))80 {81 PlayerPrefs.SetInt("Slot8",0);82 }83 if(!PlayerPrefs.HasKey("TotalUnlocks"))84 {85 PlayerPrefs.SetInt("TotalUnlocks",1);86 }87 if(!PlayerPrefs.HasKey("Level"))88 {89 PlayerPrefs.SetInt("Level",1);90 }91 if(!PlayerPrefs.HasKey("VisitedFacebook"))92 {93 PlayerPrefs.SetInt("VisitedFacebook",0);94 }95 if(!PlayerPrefs.HasKey("VisitedTwitter"))96 {97 PlayerPrefs.SetInt("VisitedTwitter",0);98 }99 if(!PlayerPrefs.HasKey("VisitedWebsite"))100 {101 PlayerPrefs.SetInt("VisitedWebsite",0);102 }103 if(!PlayerPrefs.HasKey("VisitedRate"))104 {105 PlayerPrefs.SetInt("VisitedRate",0);106 }107 if(!PlayerPrefs.HasKey("Bonus"))108 {109 PlayerPrefs.SetInt("Bonus",0);110 }111 if(!PlayerPrefs.HasKey("Streak"))112 {113 PlayerPrefs.SetInt("Streak",0);114 }115 NinjaUnits();116 OniUnits();117 Currency();118}119static function Currency()120{121 if(!PlayerPrefs.HasKey("Diamonds"))122 {123 PlayerPrefs.SetInt("Diamonds",0);124 }125 if(!PlayerPrefs.HasKey("TotalDiamonds"))126 {127 PlayerPrefs.SetInt("TotalDiamonds",0);128 }129 if(!PlayerPrefs.HasKey("TotalCoins"))130 {131 PlayerPrefs.SetInt("TotalCoins",0);132 }133 if(!PlayerPrefs.HasKey("Score"))134 {135 PlayerPrefs.SetInt("Score",0);136 }137 if(!PlayerPrefs.HasKey("BonusScore"))138 {139 PlayerPrefs.SetInt("BonusScore",0);140 }141 if(!PlayerPrefs.HasKey("TotalScore"))142 {143 PlayerPrefs.SetInt("TotalScore",0);144 }145 if(!PlayerPrefs.HasKey("Skill"))146 {147 PlayerPrefs.SetInt("Skill",0);148 }149 if(!PlayerPrefs.HasKey("BonusSkill"))150 {151 PlayerPrefs.SetInt("BonusSkill",0);152 }153 if(!PlayerPrefs.HasKey("TotalSkill"))154 {155 PlayerPrefs.SetInt("TotalSkill",0);156 }157 if(!PlayerPrefs.HasKey("TotalKills"))158 {159 PlayerPrefs.SetInt("TotalKills",0);160 }161}162static function NinjaUnits()163{164 if(!PlayerPrefs.HasKey("Swordsman"))165 {166 PlayerPrefs.SetInt("Swordsman",0);167 }168 if(!PlayerPrefs.HasKey("Nunchuckman"))169 {170 PlayerPrefs.SetInt("Nunchuckman",0);171 }172 if(!PlayerPrefs.HasKey("Throwingman"))173 {174 PlayerPrefs.SetInt("Throwingman",0);175 }176 if(!PlayerPrefs.HasKey("Longbowman"))177 {178 PlayerPrefs.SetInt("Longbowman",0);179 }180 if(!PlayerPrefs.HasKey("Woodman"))181 {182 PlayerPrefs.SetInt("Woodman",0);183 }184 if(!PlayerPrefs.HasKey("Chainman"))185 {186 PlayerPrefs.SetInt("Chainman",0);187 }188 if(!PlayerPrefs.HasKey("Saiman"))189 {190 PlayerPrefs.SetInt("Saiman",0);191 }192 if(!PlayerPrefs.HasKey("Clawman"))193 {194 PlayerPrefs.SetInt("Clawman",0);195 }196 if(!PlayerPrefs.HasKey("Unit1Level"))197 {198 PlayerPrefs.SetInt("Unit1Level",1);199 }200 if(!PlayerPrefs.HasKey("Unit2Level"))201 {202 PlayerPrefs.SetInt("Unit2Level",0);203 }204 if(!PlayerPrefs.HasKey("Unit3Level"))205 {206 PlayerPrefs.SetInt("Unit3Level",0);207 }208 if(!PlayerPrefs.HasKey("Unit4Level"))209 {210 PlayerPrefs.SetInt("Unit4Level",0);211 }212 if(!PlayerPrefs.HasKey("Unit5Level"))213 {214 PlayerPrefs.SetInt("Unit5Level",0);215 }216 if(!PlayerPrefs.HasKey("Unit6Level"))217 {218 PlayerPrefs.SetInt("Unit6Level",0);219 }220 if(!PlayerPrefs.HasKey("Unit7Level"))221 {222 PlayerPrefs.SetInt("Unit7Level",0);223 }224 if(!PlayerPrefs.HasKey("Unit8Level"))225 {226 PlayerPrefs.SetInt("Unit8Level",0);227 }228 if(!PlayerPrefs.HasKey("MinerLevel"))229 {230 PlayerPrefs.SetInt("MinerLevel",1);231 }232 if(!PlayerPrefs.HasKey("PagodaLevel"))233 {234 PlayerPrefs.SetInt("PagodaLevel",1);235 }236 if(!PlayerPrefs.HasKey("StoneLevel"))237 {238 PlayerPrefs.SetInt("StoneLevel",0);239 }240 if(PlayerPrefs.GetInt("StoneLevel") > 1)241 {242 PlayerPrefs.SetInt("StoneLevel",1);243 }244 if(!PlayerPrefs.HasKey("CoinsLevel"))245 {246 PlayerPrefs.SetInt("CoinsLevel",1);247 }248}249static function OniUnits()250{251 if(!PlayerPrefs.HasKey("OniUnit1Level"))252 {253 PlayerPrefs.SetInt("OniUnit1Level",1);254 }255 if(!PlayerPrefs.HasKey("OniUnit2Level"))256 {257 PlayerPrefs.SetInt("OniUnit2Level",1);258 }259 if(!PlayerPrefs.HasKey("OniUnit3Level"))260 {261 PlayerPrefs.SetInt("OniUnit3Level",1);262 }263 if(!PlayerPrefs.HasKey("OniUnit4Level"))264 {265 PlayerPrefs.SetInt("OniUnit4Level",1);266 }267 if(!PlayerPrefs.HasKey("OniUnit5Level"))268 {269 PlayerPrefs.SetInt("OniUnit5Level",1);270 }271 if(!PlayerPrefs.HasKey("OniUnit6Level"))272 {273 PlayerPrefs.SetInt("OniUnit6Level",1);274 }275 if(!PlayerPrefs.HasKey("OniUnit7Level"))276 {277 PlayerPrefs.SetInt("OniUnit7Level",1);278 }279 if(!PlayerPrefs.HasKey("OniUnit8Level"))280 {281 PlayerPrefs.SetInt("OniUnit8Level",1);282 }...

Full Screen

Full Screen

recipe-filter-test.js

Source:recipe-filter-test.js Github

copy

Full Screen

...12 it('hasKeyにオブジェクト以外を渡すと、そのまま返ってくる。', function() {13 var hasKey, test;14 hasKey = createFilter('hasKey');15 test = 'test';16 expect(hasKey(test, 't')).toBe('test');17 test = 10;18 expect(hasKey(test, 0)).toBe(10);19 test = function() {};20 expect(hasKey(test, 'f').toString()).toBe(test.toString());21 });22 it('hasKeyにオブジェクトを渡すと、キーにqueryを含むものでフィルターをかける。', function() {23 var hasKey, test;24 hasKey = createFilter('hasKey');25 test = {26 test: 'test',27 func: function() {},28 array: ['test'],29 date: new Date(100)30 };31 expect(_.isEqual(hasKey(test, 's'), {32 test: 'test'33 })).toBe(true);34 expect(_.isEqual(hasKey(test, 0), {})).toBe(true);35 expect(_.isEqual(hasKey(test, 'e'), {36 test: 'test',37 date: test.date38 })).toBe(true);39 test = [40 'test',41 function() {},42 ['test'],43 new Date(100)44 ];45 expect(_.isEqual(hasKey(test, 's'), [])).toBe(true);46 expect(_.isEqual(hasKey(test, '0'), ['test'])).toBe(true);47 expect(_.isEqual(hasKey(test, 0), ['test'])).toBe(true);48 });49 });...

Full Screen

Full Screen

test.js

Source:test.js Github

copy

Full Screen

1var expect = require('chai').expect;2var hasAttr = require('../index');3var SINGLE_LEVEL_JSON = {4 'name': 'Arshad Kazmi',5 'github': 'arshadkazmi42',6 'twitter': '@arshadkazmi42',7};8var MULTI_LEVEL_JSON = {9 'name': 'Arshad Kazmi',10 'profile': {11 'github': {12 'username': 'arshadkazmi42',13 'repos': [14 {15 'repo_name': 'hasattr',16 'url': 'https://github.com/arshadkazmi42/hasattr',17 },18 ],19 },20 'twitter': {21 'username': 'arshadkazmi42',22 },23 },24};25describe('Search the key in all types of json', function() {26 it('should find the key in single level json', function() {27 var hasKey = hasAttr('name', SINGLE_LEVEL_JSON);28 expect(hasKey).to.be.true;29 hasKey = hasAttr('repo_name', SINGLE_LEVEL_JSON);30 expect(hasKey).to.be.false;31 });32 it('should find the key in nested level json', function() {33 var hasKey = hasAttr('github', MULTI_LEVEL_JSON);34 expect(hasKey).to.be.true;35 hasKey = hasAttr('repo_name', MULTI_LEVEL_JSON);36 expect(hasKey).to.be.true;37 });...

Full Screen

Full Screen

hasKey.test.js

Source:hasKey.test.js Github

copy

Full Screen

...8test('hasKey is a Function', () => {9 expect(hasKey).toBeInstanceOf(Function);10});11test('hasKey returns true for simple property', () => {12 expect(hasKey(data, ['a'])).toBe(true);13});14test('hasKey returns true for object property', () => {15 expect(hasKey(data, ['b'])).toBe(true);16});17test('hasKey returns true for nested property', () => {18 expect(hasKey(data, ['b', 'c'])).toBe(true);19});20test('hasKey returns true for property with dots', () => {21 expect(hasKey(data, ['d.e'])).toBe(true);22});23test('hasKey returns true for property with dots and same sibling key', () => {24 expect(hasKey(data, ['b.d'])).toBe(true);25});26test('hasKey returns false for non-existent property', () => {27 expect(hasKey(data, ['f'])).toBe(false);28});29test('hasKey returns false for virtual nested property', () => {30 expect(hasKey(data, ['d'])).toBe(false);31});32test('hasKey returns false for empty key list', () => {33 expect(hasKey(data, [])).toBe(false);...

Full Screen

Full Screen

Jest Testing Tutorial

LambdaTest’s Jest Testing Tutorial covers step-by-step guides around Jest with code examples to help you be proficient with the Jest framework. The Jest tutorial has chapters to help you learn right from the basics of Jest framework to code-based tutorials around testing react apps with Jest, perform snapshot testing, import ES modules and more.

Chapters

  1. What is Jest Framework
  2. Advantages of Jest - Jest has 3,898,000 GitHub repositories, as mentioned on its official website. Learn what makes Jest special and why Jest has gained popularity among the testing and developer community.
  3. Jest Installation - All the prerequisites and set up steps needed to help you start Jest automation testing.
  4. Using Jest with NodeJS Project - Learn how to leverage Jest framework to automate testing using a NodeJS Project.
  5. Writing First Test for Jest Framework - Get started with code-based tutorial to help you write and execute your first Jest framework testing script.
  6. Jest Vocabulary - Learn the industry renowned and official jargons of the Jest framework by digging deep into the Jest vocabulary.
  7. Unit Testing with Jest - Step-by-step tutorial to help you execute unit testing with Jest framework.
  8. Jest Basics - Learn about the most pivotal and basic features which makes Jest special.
  9. Jest Parameterized Tests - Avoid code duplication and fasten automation testing with Jest using parameterized tests. Parameterization allows you to trigger the same test scenario over different test configurations by incorporating parameters.
  10. Jest Matchers - Enforce assertions better with the help of matchers. Matchers help you compare the actual output with the expected one. Here is an example to see if the object is acquired from the correct class or not. -

|<p>it('check_object_of_Car', () => {</p><p> expect(newCar()).toBeInstanceOf(Car);</p><p> });</p>| | :- |

  1. Jest Hooks: Setup and Teardown - Learn how to set up conditions which needs to be followed by the test execution and incorporate a tear down function to free resources after the execution is complete.
  2. Jest Code Coverage - Unsure there is no code left unchecked in your application. Jest gives a specific flag called --coverage to help you generate code coverage.
  3. HTML Report Generation - Learn how to create a comprehensive HTML report based on your Jest test execution.
  4. Testing React app using Jest Framework - Learn how to test your react web-application with Jest framework in this detailed Jest tutorial.
  5. Test using LambdaTest cloud Selenium Grid - Run your Jest testing script over LambdaTest cloud-based platform and leverage parallel testing to help trim down your test execution time.
  6. Snapshot Testing for React Front Ends - Capture screenshots of your react based web-application and compare them automatically for visual anomalies with the help of Jest tutorial.
  7. Bonus: Import ES modules with Jest - ES modules are also known as ECMAScript modules. Learn how to best use them by importing in your Jest testing scripts.
  8. Jest vs Mocha vs Jasmine - Learn the key differences between the most popular JavaScript-based testing frameworks i.e. Jest, Mocha, and Jasmine.
  9. Jest FAQs(Frequently Asked Questions) - Explore the most commonly asked questions around Jest framework, with their answers.

Run Jest automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful