async def test_async_basic_datatypes_04(self): val = await self.con.query_one( ''' SELECT schema::ObjectType { foo := { [(a := 1, b := 2), (a := 3, b := 4)], [(a := 5, b := 6)], <array <tuple<a: int64, b: int64>>>[], } } LIMIT 1 ''' ) self.assertEqual( val.foo, edgedb.Set([ edgedb.Array([ edgedb.NamedTuple(a=1, b=2), edgedb.NamedTuple(a=3, b=4), ]), edgedb.Array([ edgedb.NamedTuple(a=5, b=6), ]), edgedb.Array([]), ]), )
def test_array_2(self): t = edgedb.Array((1, 'a')) self.assertEqual(repr(t), "[1, 'a']") self.assertEqual(str(t), "[1, 'a']") self.assertEqual(len(t), 2) self.assertEqual(hash(t), hash(edgedb.Array([1, 'a']))) self.assertNotEqual(hash(t), hash(edgedb.Array([10, 'ab']))) self.assertEqual(t[0], 1) self.assertEqual(t[1], 'a') with self.assertRaisesRegex(IndexError, 'out of range'): t[2]
def test_array_empty_1(self): t = edgedb.Array() self.assertEqual(len(t), 0) self.assertNotEqual(hash(t), hash(())) with self.assertRaisesRegex(IndexError, 'out of range'): t[0] self.assertEqual(repr(t), "[]")
def test_array_6(self): self.assertNotEqual(edgedb.Array([1, 2, 3]), False)
def test_array_5(self): self.assertEqual(edgedb.Array([1, 2, 3]), [1, 2, 3]) self.assertEqual([1, 2, 3], edgedb.Array([1, 2, 3])) self.assertNotEqual([1, 2, 4], edgedb.Array([1, 2, 3])) self.assertNotEqual(edgedb.Array([1, 2, 3]), [1, 3, 2]) self.assertLess(edgedb.Array([1, 2, 3]), [1, 3, 2]) self.assertEqual(edgedb.Array([]), []) self.assertEqual(edgedb.Array([1]), [1]) self.assertGreaterEqual(edgedb.Array([1]), [1]) self.assertNotEqual(edgedb.Array([1]), []) self.assertGreater(edgedb.Array([1]), []) self.assertNotEqual(edgedb.Array([1]), [2]) self.assertLess(edgedb.Array([1]), [2]) self.assertNotEqual(edgedb.Array([1, 2]), [2, 2]) self.assertNotEqual(edgedb.Array([1, 1]), [2, 2, 1])
def test_array_3(self): t = edgedb.Array((1, [])) t[1].append(t) self.assertEqual(t[1], [t]) self.assertEqual(repr(t), '[1, [[...]]]')