1cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# Copyright 2014 The Chromium Authors. All rights reserved. 2cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be 3cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# found in the LICENSE file. 4cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)import unittest 5cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 6f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)from telemetry.timeline import bounds 7cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 8cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)class BoundsTests(unittest.TestCase): 10cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) def testGetOverlap(self): 12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) # Non overlap cases. 13cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) self.assertEquals(0, bounds.Bounds.GetOverlap(10, 20, 30, 40)) 14cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) self.assertEquals(0, bounds.Bounds.GetOverlap(30, 40, 10, 20)) 15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) # Overlap cases. 16cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) self.assertEquals(10, bounds.Bounds.GetOverlap(10, 30, 20, 40)) 17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) self.assertEquals(10, bounds.Bounds.GetOverlap(20, 40, 10, 30)) 18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) # Inclusive cases. 19cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) self.assertEquals(10, bounds.Bounds.GetOverlap(10, 40, 20, 30)) 20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) self.assertEquals(10, bounds.Bounds.GetOverlap(20, 30, 10, 40)) 21