def test_attach(self): ''' Tests the following: 1. Attaching to a registered pdarray 2. The registered and attached pdarrays are equal 3. The attached pdarray is deleted server-side following unregister of registered pdarray and invocation of ak.clear() 4. method invocation on cleared attached array raises RuntimeError ''' ar_array = self.a_array.register('test_int64_a') aar_array = ak.attach_pdarray('test_int64_a') self.assertEqual(ar_array.name, aar_array.name) self.assertTrue( (ar_array.to_ndarray() == aar_array.to_ndarray()).all()) ak.disconnect() ak.connect(server=ArkoudaTest.server, port=ArkoudaTest.port) aar_array = ak.attach_pdarray('test_int64_a') self.assertEqual(ar_array.name, aar_array.name) self.assertTrue( (ar_array.to_ndarray() == aar_array.to_ndarray()).all()) ar_array.unregister() ak.clear() with self.assertRaises(RuntimeError): str(aar_array) with self.assertRaises(RuntimeError): repr(aar_array)
def test_disconnect_on_disconnected_client(self): ''' Tests the ak.disconnect() method invoked on a client that is already disconnect to ensure there is no error ''' ak.disconnect() self.assertFalse(ak.client.connected) ak.disconnect() ak.connect(server=ArkoudaTest.server, port=ArkoudaTest.port)
def test_client_connected(self): ''' Tests the following methods: ak.client.connected() ak.client.disconnect() ak.client.connect() :return: None :raise: AssertionError if an assert* method returns incorrect value or if there is a error in connecting or disconnecting from the Arkouda server ''' self.assertTrue(ak.client.connected) try: ak.disconnect() except Exception as e: raise AssertionError(e) self.assertFalse(ak.client.connected) try: ak.connect(server=ArkoudaTest.server, port=ArkoudaTest.port) except Exception as e: raise AssertionError(e) self.assertTrue(ak.client.connected)
self.assertEqual(np.float64(5), dArray[0]) def testPdArrayDivideNumpyInt(self): aArray = ak.ones(100) dArray = aArray * np.int64(15) / 3 self.assertIsInstance(dArray, ak.pdarrayclass.pdarray) self.assertEqual(np.float64(5), dArray[0]) dArray = np.int64(15) * aArray / 3 self.assertIsInstance(dArray, ak.pdarrayclass.pdarray) self.assertEqual(np.float64(5), dArray[0]) def testAllOperators(self): run_tests(verbose) if __name__ == '__main__': ''' Enables invocation of operator tests outside of pytest test harness ''' import sys if len(sys.argv) not in (3, 4): print(f"Usage: {sys.argv[0]} <server_name> <port> [<verbose>=(0|1)]") verbose = False if len(sys.argv) == 4 and sys.argv[3] == "1": verbose = True ak.connect(server=sys.argv[1], port=int(sys.argv[2])) success = run_tests(verbose) ak.disconnect() sys.exit((1, 0)[success])
def test_disconnect_on_disconnected_client(self): ak.disconnect() self.assertFalse(ak.client.connected) ak.disconnect() ak.connect()
def test_disconnect_on_disconnected_client(self): ak.disconnect() self.assertFalse(ak.client.connected) ak.disconnect() ak.connect(server=ArkoudaTest.server, port=ArkoudaTest.port)