<s> from __future__ import ( absolute_import , division , generators , nested_scopes , print_function , <EOL> unicode_literals , with_statement ) <EOL> import unittest <EOL> from pants . option . optionable import Optionable <EOL> class OptionableTest ( unittest . TestCase ) : <EOL> def test_optionable ( self ) : <EOL> class NoScope ( Optionable ) : <EOL> pass <EOL> with self . assertRaises ( NotImplementedError ) : <EOL> NoScope ( ) <EOL> class NoneScope ( Optionable ) : <EOL> options_scope = None <EOL> with self . assertRaises ( NotImplementedError ) : <EOL> NoneScope ( ) <EOL> class NonStringScope ( Optionable ) : <EOL> options_scope = <NUM_LIT> <EOL> with self . assertRaises ( NotImplementedError ) : <EOL> NonStringScope ( ) <EOL> class StringScope ( Optionable ) : <EOL> options_scope = '<STR_LIT>' <EOL> self . assertEquals ( '<STR_LIT>' , StringScope . options_scope ) <EOL> class Intermediate ( Optionable ) : <EOL> pass <EOL> class Indirect ( Intermediate ) : <EOL> options_scope = '<STR_LIT>' <EOL> self . assertEquals ( '<STR_LIT>' , Indirect . options_scope ) </s>
