blob: a43c0444c06c89300a678e9aaa054882cb5d4b81 [file] [log] [blame]
# Copyright 2016 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 unittest
from telemetry.util import matching
class BenchmarkFoo(object):
""" Benchmark Foo for testing."""
@classmethod
def Name(cls):
return 'FooBenchmark'
class BenchmarkBar(object):
""" Benchmark Bar for testing long description line."""
@classmethod
def Name(cls):
return 'BarBenchmarkkkkk'
class UnusualBenchmark(object):
@classmethod
def Name(cls):
return 'I have a very unusual name'
class CommandLineUnittest(unittest.TestCase):
def testGetMostLikelyMatchedObject(self):
# Test moved from telemetry/benchmark_runner_unittest.py
all_benchmarks = [BenchmarkFoo, BenchmarkBar, UnusualBenchmark]
self.assertEquals(
[BenchmarkFoo, BenchmarkBar],
matching.GetMostLikelyMatchedObject(
all_benchmarks, 'BenchmarkFooz', name_func=lambda x: x.Name()))
self.assertEquals(
[BenchmarkBar, BenchmarkFoo],
matching.GetMostLikelyMatchedObject(
all_benchmarks, 'BarBenchmark', name_func=lambda x: x.Name()))
self.assertEquals(
[UnusualBenchmark],
matching.GetMostLikelyMatchedObject(
all_benchmarks, 'unusual', name_func=lambda x: x.Name()))