Best Python code snippet using localstack_python
aws_dynamodbstreams_info.py
Source: aws_dynamodbstreams_info.py
...131 return client.list_streams(132 TableName=module.params['name'],133 ), False134 elif module.params['describe_stream']:135 return client.describe_stream(136 StreamArn=module.params['stream_arn'],137 ), False138 elif module.params['get_shard_iterator']:139 return client.describe_stream(140 StreamArn=module.params['stream_arn'],141 ShardId=module.params['shard_id'],142 ShardIteratorType=module.params['shard_iterator_type'],143 SequenceNumber=module.params['sequence_number'],144 ), False145 elif module.params['get_records']:146 if client.can_paginate('get_records'):147 paginator = client.get_paginator('get_records')148 return paginator.paginate(149 ShardIterator=module.params['shard_iterator'],150 ), True151 else:152 return client.get_records(153 ShardIterator=module.params['shard_iterator'],...
kinesis_lab.py
Source: kinesis_lab.py
...5cli_ken = session.client("kinesis")6def create_stream(name,shards):7 res_create_stream = cli_ken.create_stream(StreamName=name, ShardCount = shards)8 return res_create_stream9def describe_stream(stream_name):10 res_desc_stream = cli_ken.describe_stream(StreamName=stream_name)11 return res_desc_stream12def list_stream(limit):13 res_list_stream = cli_ken.list_streams(Limit = limit)14 return res_list_stream15def get_kinesis_shards(stream_name, shard_id):16 res_shard_iter = cli_ken.get_shard_iterator(StreamName = stream_name, ShardId = shard_id, ShardIteratorType = 'LATEST')17 return res_shard_iter18def list_shards(stream_name):19 res_shard_lst = cli_ken.list_shards(StreamName = stream_name)20 lst_shards = [shard_id['ShardId'] for shard_id in res_shard_lst['Shards']] 21 return lst_shards22def get_record(shard_key):23 res_get_rec = cli_ken.get_records(ShardIterator = shard_key, Limit = 10)24 return res_get_rec['Records']25def put_record(stream_name, data, key):26 res_put_rec = cli_ken.put_record(StreamName = stream_name, Data = data, PartitionKey = key)27 print ("Results from PUT: ShardId = {} and Sequence Number = {}".format (res_put_rec ['ShardId'], res_put_rec['SequenceNumber']))28 return [res_put_rec ['ShardId'], res_put_rec['SequenceNumber']]29 30def del_stream(stream_name):31 res_stream_del =cli_ken.delete_stream(StreamName=stream_name)32 return res_stream_del33if __name__ == '__main__':34 35 found=False36 stream_name = "Aji_Stream"37 shards = 138 #Create a stream 39 create_stream(stream_name,shards) 40 #Descrive a stream to get the Stream Status41 stream_status = describe_stream(stream_name)['StreamDescription'] ['StreamStatus']42 #Loop in till the stream is active43 while stream_status != "ACTIVE":44 print("Waiting for the stream to be active....")45 t.sleep(10)46 if describe_stream(stream_name)['StreamDescription'] ['StreamStatus'] == "ACTIVE":47 found=True48 break49 #If the Stream is Active.. Get the Shard ID50 if found==True: 51 shard_id = describe_stream(stream_name)['StreamDescription'] ['Shards'][0]['ShardId']52 #If it gets a Shard ID.. Create the Shard Iterator53 if shard_id != "": 54 shard_key = get_kinesis_shards(stream_name, shard_id)['ShardIterator']55 56 #If the Get Data returns null.. Input a record to the stream 57 if len(get_record(shard_key)) == 0:58 shard_seq = put_record(stream_name,"Aji_Test_Data", "1")59 60 #Get the result of the data put inside the stream in the earlier command 61 if len(get_record(shard_key)) != 0: 62 result = [str(val['Data']) for val in get_record(shard_key)]63 print(result)64 # Delete the Stream 65 del_stream(stream_name) 66 67 #Verify whether the stream is deleated.68 stream_status = describe_stream(stream_name)['StreamDescription'] ['StreamStatus'] 69 while stream_status != 'ACTIVE':70 try:71 print("Waiting for the stream to be deleted....")72 t.sleep(10) 73 stream_status = describe_stream(stream_name)['StreamDescription'] ['StreamStatus']74 if stream_status != 'DELETING': 75 break76 except ResourceNotFoundException:77 print("Stream Deleted.....")...
kinesis_utils.py
Source: kinesis_utils.py
...17 def __init__(self, stream_name, region='us-east-2'):18 self.stream_name = stream_name19 self.region = region20 self.kinesis_conn = kinesis.connect_to_region(region) # Connect to a Kinesis stream in a specific region21 self.description = self.kinesis_conn.describe_stream(stream)22 self.shards = self.get_shards()23 self.first_shard_id = self.shards[0]["ShardId"]24 self.partition_key = 025 26 def get_shards(self, description):27 """28 Parse shard information29 """30 return self.description['StreamDescription']['Shards']31 def get_partition_key(self):32 """33 Gets an increments the partition key34 """35 self.partition_key += 136 if self.partition_key >= len(self.shards):37 self.partition_key = 038 39 return self.partiton_key40 41 def put_record(self, record):42 """43 Put a record (<=1MB) on to a Kinesis stream44 """45 kinesis.put_record(self.stream_name, json.dumps(record), self.get_partition_key())46 def put_records(self, records):47 """48 Put records on to a Kinesis stream49 """50 data = []51 for record in records:52 data.append( { 'Data': json.dumps(record), 'PartitionKey': self.get_partition_key() } )53 54 kinesis.put_records(data, self.stream_name)55 56 def records_iterator(self, limit=100):57 """58 Read the latest batch of records from a Kinesis stream59 """60 shard_it = kinesis.get_shard_iterator(self.stream_name, self.first_shard_id, "LATEST")["ShardIterator"]61 while True:62 t0 = time.time()63 out = kinesis.get_records(shard_it, limit=limit)64 shard_it = out["NextShardIterator"]65 yield out66 67 t1 = time.time()68 if t1 - t0 < 0.2:69 time.sleep(0.2 - (t1 - t0))70 71################################################################################72# MAIN73if __name__ == '__main__':74 parser = argparser({'desc': "Helper functions for AWS Kinesis: kinesis_utils.py"})75 parser.add_argument('--describe_stream', help='Describe a specific Kinesis stream', required=False, type=str)76 args = parser.parse_args() # Get inputs and options77 if args.describe_stream:78 describe_stream(args.describe_stream)79 80 ...
Check out the latest blogs from LambdaTest on this topic:
The fact is not alien to us anymore that cross browser testing is imperative to enhance your application’s user experience. Enhanced knowledge of popular and highly acclaimed testing frameworks goes a long way in developing a new app. It holds more significance if you are a full-stack developer or expert programmer.
QA testers have a unique role and responsibility to serve the customer. Serving the customer in software testing means protecting customers from application defects, failures, and perceived failures from missing or misunderstood requirements. Testing for known requirements based on documentation or discussion is the core of the testing profession. One unique way QA testers can both differentiate themselves and be innovative occurs when senseshaping is used to improve the application user experience.
Having a good web design can empower business and make your brand stand out. According to a survey by Top Design Firms, 50% of users believe that website design is crucial to an organization’s overall brand. Therefore, businesses should prioritize website design to meet customer expectations and build their brand identity. Your website is the face of your business, so it’s important that it’s updated regularly as per the current web design trends.
Enterprise resource planning (ERP) is a form of business process management software—typically a suite of integrated applications—that assists a company in managing its operations, interpreting data, and automating various back-office processes. The introduction of a new ERP system is analogous to the introduction of a new product into the market. If the product is not handled appropriately, it will fail, resulting in significant losses for the business. Most significantly, the employees’ time, effort, and morale would suffer as a result of the procedure.
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!