# 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.

"""Tests for the test_components module."""

from __future__ import absolute_import
from __future__ import division
from __future__ import print_function

from fire import test_components as tc
from fire import testutils


class TestComponentsTest(testutils.BaseTestCase):
  """Tests to verify that the test components are importable and okay."""

  def testTestComponents(self):
    self.assertIsNotNone(tc.Empty)
    self.assertIsNotNone(tc.OldStyleEmpty)

  def testNonComparable(self):
    with self.assertRaises(ValueError):
      tc.NonComparable() != 2  # pylint: disable=expression-not-assigned
    with self.assertRaises(ValueError):
      tc.NonComparable() == 2  # pylint: disable=expression-not-assigned


if __name__ == '__main__':
  testutils.main()
示例#2
0
        self.assertNotIn('yellow', completions)
        self.assertNotIn('pink', completions)

    def testGeneratorCompletions(self):
        def generator():
            x = 0
            while True:
                yield x
                x += 1

        completions = completion.Completions(generator())
        self.assertEqual(completions, [])

    def testClassCompletions(self):
        completions = completion.Completions(tc.NoDefaults)
        self.assertEqual(completions, [])

    def testObjectCompletions(self):
        completions = completion.Completions(tc.NoDefaults())
        self.assertIn('double', completions)
        self.assertIn('triple', completions)

    def testMethodCompletions(self):
        completions = completion.Completions(tc.NoDefaults().double)
        self.assertNotIn('--self', completions)
        self.assertIn('--count', completions)


if __name__ == '__main__':
    testutils.main()