Esempio n. 1
0
    def test_range(self):
        e = linqy.range(3)
        self.assertTrue(isinstance(e, linqy.Enumerable))
        self.assertEqual(list(e), [0,1,2])

        e = linqy.range(3, 6)
        self.assertTrue(isinstance(e, linqy.Enumerable))
        self.assertEqual(list(e), [3,4,5])

        e = linqy.range(1, 6, 2)
        self.assertTrue(isinstance(e, linqy.Enumerable))
        self.assertEqual(list(e), [1,3,5])
Esempio n. 2
0
 def test_single_pred_default(self):
     self.assertEqual(linqy.range(10).single(lambda x: x == 5, default=100), 5)
     self.assertRaises(LookupError, lambda: linqy.range(10).single(lambda x: x > 5, default=100))
     self.assertEqual(linqy.range(10).single(lambda x: x > 100, default=100), 100)
Esempio n. 3
0
 def test_single_pred(self):
     self.assertEqual(linqy.range(10).single(lambda x: x == 5), 5)
     self.assertRaises(LookupError, lambda: linqy.range(10).single(lambda x: x > 5))
     self.assertRaises(LookupError, lambda: linqy.range(10).single(lambda x: x > 100))
Esempio n. 4
0
    def test_where(self):
        e = linqy.range(50,100).where(lambda x: not x % 10)
        self.assertEqual(list(e), [50,60,70,80,90])

        e = linqy.range(50,100).where(lambda x, i: i < 5)
        self.assertEqual(list(e), [50,51,52,53,54])
Esempio n. 5
0
 def test_thenbydesc(self):
     seq = self.make_data()
     a,b,c,d,e = seq
     enum = linqy.make(seq).orderby(lambda x: x['name']).thenbydesc(lambda x: x['price'])
     self.assertEqual(list(enum), [c,a,d,b,e])
     self.assertRaises(AttributeError, lambda: linqy.range(10).thenbydesc(lambda x: x))