 8e8156c488
			
		
	
	8e8156c488
	
	
	
		
			
			Christmas came early. Closes-Bug: #1479466 Change-Id: I931d826690c925f022dbfffe9afb7bf41345b1d0
		
			
				
	
	
		
			59 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # -*- coding: utf-8 -*-
 | |
| 
 | |
| #    Copyright (C) 2015 Yahoo! Inc. All Rights Reserved.
 | |
| #
 | |
| #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 | |
| #    not use this file except in compliance with the License. You may obtain
 | |
| #    a copy of the License at
 | |
| #
 | |
| #         http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| #    Unless required by applicable law or agreed to in writing, software
 | |
| #    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 | |
| #    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 | |
| #    License for the specific language governing permissions and limitations
 | |
| #    under the License.
 | |
| 
 | |
| from taskflow import deciders
 | |
| from taskflow import test
 | |
| 
 | |
| 
 | |
| class TestDeciders(test.TestCase):
 | |
|     def test_translate(self):
 | |
|         for val in ['all', 'ALL', 'aLL', deciders.Depth.ALL]:
 | |
|             self.assertEqual(deciders.Depth.ALL,
 | |
|                              deciders.Depth.translate(val))
 | |
|         for val in ['atom', 'ATOM', 'atOM', deciders.Depth.ATOM]:
 | |
|             self.assertEqual(deciders.Depth.ATOM,
 | |
|                              deciders.Depth.translate(val))
 | |
|         for val in ['neighbors', 'Neighbors',
 | |
|                     'NEIGHBORS', deciders.Depth.NEIGHBORS]:
 | |
|             self.assertEqual(deciders.Depth.NEIGHBORS,
 | |
|                              deciders.Depth.translate(val))
 | |
|         for val in ['flow', 'FLOW', 'flOW', deciders.Depth.FLOW]:
 | |
|             self.assertEqual(deciders.Depth.FLOW,
 | |
|                              deciders.Depth.translate(val))
 | |
| 
 | |
|     def test_bad_translate(self):
 | |
|         self.assertRaises(TypeError, deciders.Depth.translate, 3)
 | |
|         self.assertRaises(TypeError, deciders.Depth.translate, object())
 | |
|         self.assertRaises(ValueError, deciders.Depth.translate, "stuff")
 | |
| 
 | |
|     def test_pick_widest(self):
 | |
|         choices = [deciders.Depth.ATOM, deciders.Depth.FLOW]
 | |
|         self.assertEqual(deciders.Depth.FLOW, deciders.pick_widest(choices))
 | |
|         choices = [deciders.Depth.ATOM, deciders.Depth.FLOW,
 | |
|                    deciders.Depth.ALL]
 | |
|         self.assertEqual(deciders.Depth.ALL, deciders.pick_widest(choices))
 | |
|         choices = [deciders.Depth.ATOM, deciders.Depth.FLOW,
 | |
|                    deciders.Depth.ALL, deciders.Depth.NEIGHBORS]
 | |
|         self.assertEqual(deciders.Depth.ALL, deciders.pick_widest(choices))
 | |
|         choices = [deciders.Depth.ATOM, deciders.Depth.NEIGHBORS]
 | |
|         self.assertEqual(deciders.Depth.NEIGHBORS,
 | |
|                          deciders.pick_widest(choices))
 | |
| 
 | |
|     def test_bad_pick_widest(self):
 | |
|         self.assertRaises(ValueError, deciders.pick_widest, [])
 | |
|         self.assertRaises(ValueError, deciders.pick_widest, ["a"])
 | |
|         self.assertRaises(ValueError, deciders.pick_widest, set(['b']))
 |