四月二十八什么星座| 夜里12点是什么时辰| 申遗是什么意思| 鹅喜欢吃什么食物| 治疗宫颈炎用什么药好得快| 静脉注射是什么意思| 咖啡有什么作用| 梦见走错路是什么意思| 什么植物最老实| 肠胃出血有什么症状| 黄瓜敷脸有什么效果| 老花眼有什么办法可以恢复| 天空又什么又什么| 紫色加红色是什么颜色| 冉字五行属什么| 高压低是什么原因| 老妹是什么意思| 籍贯填写什么| 眼白发蓝是什么原因| 早上醒来手麻是什么原因| 中国的国树是什么| 6月18号什么星座| 嗟是什么意思| 妮是什么意思| 水鸭跟什么煲汤最佳| 大嘴巴是什么意思| 三教九流代表什么生肖| 一醉方休什么意思| 氧化性是什么意思| 红豆泥是什么意思| 张柏芝和谢霆锋为什么离婚| 衬衫搭配什么裤子好看| 大宝是什么意思| 什么是断掌| 满清是什么民族| 什么人不能喝牛奶| 不出汗是什么原因| 唇炎去药店买什么药| 呆呆的笑是什么笑| 大便遇水就散什么原因| 早上头晕是什么原因| 血液发黑是什么原因| 喝红茶有什么效果| 梦见吃桃子是什么预兆| 涤是什么面料| 航班是什么意思| m是什么码| 生殖器疱疹是什么病| human什么意思| 什么是真心| 吃恩替卡韦有什么副作用| 炮机是什么| 阿胶配什么吃不上火| 47年属什么生肖| 九月一日什么节日| 莴笋炒什么好吃| 女性更年期吃什么药| 丛书是什么意思| 寡欲是什么意思| 70是什么意思| 满城尽带黄金甲是什么意思| 主动脉硬化什么意思| 乳腺导管扩张吃什么药| 一喝水就尿多是什么原因| 手淫有什么坏处| 吃什么有助睡眠| 揩油是什么意思| 2031年是什么年| 母亲节送给妈妈什么礼物| 优雅从容的意思是什么| 老班章是什么茶| 聊胜于无什么意思| 中国是什么人种| 金玉其外败絮其中是什么意思| 用黄瓜敷脸有什么功效| 办护照照片有什么要求| 牛马是什么意思| 天体是什么| 女字五行属什么| 治疗白头发挂什么科| 7月8日是什么星座| 小鹿乱撞是什么意思| 里是什么结构| rolex是什么牌子的手表| 哈喇味是什么味道| 全身出虚汗多是什么原因造成的| 新癀片主要治什么病| 食用碱是什么| 鲣鱼是什么鱼| 梦见蟑螂是什么意思| 吃什么水果可以美白| 违背是什么意思| 左腹部疼是什么原因| 加号是什么意思| 36计第一计是什么| 傍大款是什么意思| 什么山没有石头| 211是什么大学| 口是什么意思| a4纸可以做什么手工| 流鼻涕吃什么药好得快| 成人达己是什么意思| 肺门不大是什么意思| 笃笃是什么意思| 天秤座是什么象| nos是什么单位| 哥伦比亚牌子什么档次| 音序是什么| 为什么右眼皮一直跳| 五月21号是什么星座| 喉咙痛上火吃什么药效果最好| 骨密度是什么意思| 侍郎是什么官| 十八罗汉是什么意思| 嫡孙是什么意思| 猫的胡须是干什么用的| 什么地赞叹| 气是什么| 胎盘血窦是什么意思| 白鱼又叫什么鱼| 917是什么意思| 白头发吃什么好| 一月28号是什么星座| 试管什么方案好| 氢什么意思| 心脏不舒服吃什么药最好| 夏天吃姜有什么好处| 眼皮跳挂什么科| 什么是厌食症| 棒打鸳鸯什么意思| 脑梗输液用什么药| 什么能力| 喝酒前喝什么不容易醉又不伤胃| 阳痿是什么原因引起的| 洛神花茶有什么功效| 辛亥革命是什么时候| 闺蜜过生日送什么礼物好| 认贼作父是什么意思| 孩子多动缺什么| 破费是什么意思| 女性排卵期一般在什么时候| 海螺什么地方不能吃| 8月1日是什么星座| 上四休二是什么意思| 北京市副市长是什么级别| 淡盐水有什么作用和功效| 遗留是什么意思| 煞星是什么意思| 早泄是什么原因导致| vogue什么意思| 大连机场叫什么名字| 提心吊胆是什么生肖| 脸颊两侧长痘痘什么原因| 1027是什么星座| 什么样的智齿需要拔| 脑电图异常是什么病| 窦性心律过缓是什么意思| 屁多且臭是什么原因| 胃窦溃疡a1期是什么意思| 什么的鸽子| 狗狗胰腺炎吃什么药| 男性支原体感染什么症状| 恏是什么意思| 地动山摇是什么生肖| 经常放屁吃什么药好| 讲述是什么意思| 吃什么水果补肝养肝最有效| 轮状病毒是什么症状| 喘不过气是什么原因| 小二是什么意思| 梦见盖房子是什么预兆| 什么药膏可以去黑头| 支气管炎改变什么意思| 眼睛无神呆滞什么原因| noon什么意思| 什么是月经| 女人辟邪带什么最好| 王字旁的字与什么有关| 氨咖黄敏胶囊主治什么| 梦见订婚是什么意思| aosc医学是什么意思| 刘彻是刘邦的什么人| 妈妈姐姐的女儿叫什么| 结石吃什么药好| 臭宝是什么意思| 狂鸟读什么| 飞机后面的白烟是什么| 肺胀是什么病| 割礼是什么| 荔枝适合什么地方种植| 醉酒第二天吃什么才能缓解难受| 梦见好多死鱼是什么意思| 耳鬓厮磨是什么意思| 补是什么偏旁| 述说是什么意思| hpv58阳性是什么意思| 养殖什么| 为什么放生泥鳅果报大| 小时的单位是什么| 笑面虎比喻什么样的人| 身是什么结构| flair是什么意思| 洋葱不能跟什么一起吃| 高血压挂什么科| 抗药性是什么意思| 豆芽不能和什么一起吃| 水马是什么| 楞严经讲的是什么| 尿酸低会引发什么症状| 趋是什么意思| 喜欢一个人是什么感觉| 睡觉食管反流什么原因| 送镜子代表什么意思| 泻火是什么意思| 邪教是什么| 器质性心脏病是什么意思| 咳嗽吃什么好的快偏方| 蓝柑是什么水果| 布施什么意思| 6月18号是什么日子| 梦见抓鸟是什么征兆| 自己家院子种什么树好| 脑膜炎是什么病严重吗| 枸杞和什么一起泡水喝最好| 金多水浊什么意思| 结甲可能是什么意思| 鸡精吃多了有什么危害| 血红蛋白浓度偏高是什么原因| 胆囊炎是什么病| 2岁打什么疫苗| 幽会是什么意思| 什么原因引起高血压| 268是什么意思| 低迷是什么意思| 吃什么吐什么是怎么回事| 金银花搭配什么泡水喝好| 梦见卖鱼是什么意思| 什么时候教师节| b细胞淋巴肿瘤是一种什么病| 什么是阳历| 滑胎是什么意思| 意思是什么意思| 大拇指抖动是什么原因引起的| 丹参滴丸治什么病| 肚子老是胀是什么原因| 胰腺炎的症状是什么| 潮热是什么症状| 中水是什么| 969368是什么电话| 收阴是什么意思| 磋磨什么意思| 为什么警察叫条子| 为什么困但是睡不着| 付之东流是什么意思| 十一月二十是什么星座| 低血糖有什么危险| 肠胃炎可以喝什么饮料| 克罗恩病有什么症状| 十月二十二是什么星座| 阴湿是什么病| 手抖是什么毛病| 獭尾肝是什么病| 本命年犯太岁什么意思| 住院号是什么| 百度
blob: 80eabff7808ad4985c2cbfa32c72d3dc46815459 [file] [log] [blame] [edit]
#!/usr/bin/env python
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import os
import re
import unittest
import PRESUBMIT
class MockInputApi(object):
def __init__(self):
self.re = re
self.os_path = os.path
self.files = []
self.is_committing = False
def AffectedFiles(self):
return self.files
def AffectedSourceFiles(self, fn):
# we'll just pretend everything is a source file for the sake of simplicity
return self.files
def ReadFile(self, f):
return f.NewContents()
class MockOutputApi(object):
class PresubmitResult(object):
def __init__(self, message, items=None, long_text=''):
self.message = message
self.items = items
self.long_text = long_text
class PresubmitError(PresubmitResult):
def __init__(self, message, items, long_text=''):
MockOutputApi.PresubmitResult.__init__(self, message, items, long_text)
self.type = 'error'
class PresubmitPromptWarning(PresubmitResult):
def __init__(self, message, items, long_text=''):
MockOutputApi.PresubmitResult.__init__(self, message, items, long_text)
self.type = 'warning'
class PresubmitNotifyResult(PresubmitResult):
def __init__(self, message, items, long_text=''):
MockOutputApi.PresubmitResult.__init__(self, message, items, long_text)
self.type = 'notify'
class PresubmitPromptOrNotify(PresubmitResult):
def __init__(self, message, items, long_text=''):
MockOutputApi.PresubmitResult.__init__(self, message, items, long_text)
self.type = 'promptOrNotify'
class MockFile(object):
def __init__(self, local_path, new_contents):
self._local_path = local_path
self._new_contents = new_contents
self._changed_contents = [(i + 1, l) for i, l in enumerate(new_contents)]
def ChangedContents(self):
return self._changed_contents
def NewContents(self):
return self._new_contents
def LocalPath(self):
return self._local_path
class MockChange(object):
def __init__(self, changed_files):
self._changed_files = changed_files
def LocalPaths(self):
return self._changed_files
class HistogramOffByOneTest(unittest.TestCase):
# Take an input and make sure the problems found equals the expectation.
def simpleCheck(self, contents, expected_errors):
input_api = MockInputApi()
input_api.files.append(MockFile('test.cc', contents))
results = PRESUBMIT._CheckForHistogramOffByOne(input_api, MockOutputApi())
if expected_errors:
self.assertEqual(1, len(results))
self.assertEqual(expected_errors, len(results[0].items))
else:
self.assertEqual(0, len(results))
def testValid(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", kFoo, kFooMax + 1);', 0)
def testValidComments(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", /*...*/ kFoo, /*...*/'
'kFooMax + 1);', 0)
def testValidMultiLine(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test",\n'
' kFoo,\n'
' kFooMax + 1);', 0)
def testValidMultiLineComments(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", // This is the name\n'
' kFoo, /* The value */\n'
' kFooMax + 1 /* The max */ );',
0)
def testNoPlusOne(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", kFoo, kFooMax);', 1)
def testInvalidWithIgnore(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", kFoo, kFooMax); '
'// PRESUBMIT_IGNORE_UMA_MAX', 0)
def testNoMax(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", kFoo, kFoo + 1);', 1)
def testNoMaxNoPlusOne(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", kFoo, kFoo);', 1)
def testMultipleErrors(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", kFoo, kFoo);\n'
'printf("hello, world!");\n'
'UMA_HISTOGRAM_ENUMERATION("test", kBar, kBarMax);', 2)
def testValidAndInvalid(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", kFoo, kFoo);\n'
'UMA_HISTOGRAM_ENUMERATION("test", kFoo, kFooMax + 1);'
'UMA_HISTOGRAM_ENUMERATION("test", kBar, kBarMax);', 2)
def testInvalidMultiLine(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test",\n'
' kFoo,\n'
' kFooMax + 2);', 1)
def testInvalidComments(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", /*...*/, val, /*...*/,'
'Max);\n', 1)
def testInvalidMultiLineComments(self):
self.simpleCheck('UMA_HISTOGRAM_ENUMERATION("test", // This is the name\n'
' kFoo, /* The value */\n'
' kFooMax + 2 /* The max */ );',
1)
class NoV4L2AggregateInitializationTest(unittest.TestCase):
def testValid(self):
self._testChange(['struct v4l2_format_ format;'], 0)
def testInvalid(self):
self._testChange(['struct v4l2_format format = {};'], 1)
self._testChange([' struct v4l2_format format = {};'], 1)
self._testChange([' struct std::vector<v4l2_format> format[] = {};'], 1)
self._testChange([' struct std::vector<v4l2_format> format[] = {{}};'], 1)
def _testChange(self, content, expected_warnings):
mock_input_api = MockInputApi()
mock_input_api.files.append(MockFile('test.cc', content))
results = PRESUBMIT._CheckForNoV4L2AggregateInitialization(mock_input_api,
MockOutputApi())
if expected_warnings:
self.assertEqual(1, len(results))
self.assertEqual(expected_warnings, len(results[0].items))
else:
self.assertEqual(0, len(results))
if __name__ == '__main__':
unittest.main()
尉迟恭是什么生肖 ny什么牌子 子宫粘连有什么症状 3911农药主要治什么 眼睛视物模糊是什么原因
大象的耳朵有什么作用 屁眼火辣辣的疼是什么原因 嘴唇起泡用什么药 梦见剪头发是什么意思 crispi是什么牌子
蚂蚁上树什么意思 多囊有什么危害 model是什么品牌 海灵菇是什么 0点是什么时辰
体感温度是什么意思 阴历六月十三是什么日子 一什么葡萄 晨起口干口苦是什么原因 什么叫语言障碍
一个山一个空念什么hcv8jop8ns3r.cn scr医学上是什么意思hcv7jop6ns6r.cn 臭虫长什么样hcv9jop7ns0r.cn 盖碗适合泡什么茶sanhestory.com 心肌炎查什么能查出来hcv9jop0ns9r.cn
星星是什么hcv8jop6ns5r.cn 怀孕了什么时候做检查1949doufunao.com 纯露是什么hcv8jop5ns0r.cn 盐水泡脚有什么好处luyiluode.com 1878年属什么生肖hcv8jop9ns1r.cn
宫颈活检lsil是什么病hcv7jop5ns3r.cn 为什么剪指甲不会疼hcv8jop9ns2r.cn 甲状腺素低吃什么能补hcv9jop5ns9r.cn 看心脏挂什么科hcv9jop7ns2r.cn 梦见粽子是什么预兆kuyehao.com
牛肉含有什么营养成分hcv9jop0ns9r.cn 什么食物降胆固醇最好hcv7jop7ns2r.cn 偏头痛什么原因引起的hcv8jop8ns8r.cn 孩子咳嗽吃什么饭菜好hcv9jop4ns3r.cn 琛字五行属什么1949doufunao.com
百度