def test_all(self): gen = DocumentGenerator() def gen_contact(): return {'email': gen.email(), 'phone': gen.phone()} def gen_rating(): return random.uniform(1, 5) template = { 'id': 'guid', 'status': ['online', 'offline', 'dnd', 'anonymous'], 'age': 'small_int', 'homepage': 'url', 'name': 'name', 'headline': 'sentence', 'about': 'paragraph', 'email': { 'typemap': 'email', 'unique': True }, 'rating': gen_rating, 'contact': gen_contact, 'favpost': [gen.slug() for n in range(1000)] } gen.set_template(template) documents = gen.documents(10) print(documents[0]) self.assertEqual(len(documents), 10)
def generate_Documents(): gen = DocumentGenerator() gen.init_word_cache(5) gen.init_sentence_cache(5) gen.word_cache = ['Is', 'this', 'working', 'pls', 'work'] gen.sentence_cache = [ 'This is a great step in the right direction', 'Every moment is the paradox of now or never', 'World will judge you on this moment' ] print(gen.word_cache) print(gen.sentence_cache) template = { 'id': 'guid', 'status': ['online', 'offline', 'dnd', 'anonymous'], 'age': 'small_int', 'homepage': 'url', 'name': 'name', 'headline': 'sentence', 'text': 'paragraph' } gen.set_template(template) documents = gen.documents(10) print(documents[0])
def test_template(self): gen = DocumentGenerator() template = { 'id': 'guid', 'status': ['online', 'offline', 'dnd', 'anonymous'], 'age': 'small_int', 'homepage': 'url', 'name': 'name', 'headline': 'sentence', 'about': 'paragraph' } gen.set_template(template) documents = gen.documents(10) self.assertEqual(len(documents), 10)
def gen_bugs(count): gen = DocumentGenerator() template = { '_id': get_id, 'title': 'sentence', 'severity': [1, 2, 3, 4, 5, 6], 'engineer': get_name, 'headline': 'sentence', 'description': 'paragraph', 'url': 'url', 'age': 'small_int', 'component': ['frontend', 'backend', 'middleware', 'infra', 'others'], } gen.set_template(template) documents = gen.documents(count) return documents
def test_nested_field(self): gen = DocumentGenerator() def gen_contact(): return {'email': gen.email(), 'phone': gen.phone()} template = { 'id': 'guid', 'status': ['online', 'offline', 'dnd', 'anonymous'], 'age': 'small_int', 'homepage': 'url', 'name': 'name', 'headline': 'sentence', 'about': 'paragraph', 'contact': gen_contact } gen.set_template(template) documents = gen.documents(10) self.assertEqual(len(documents), 10)
def test_custom_field(self): gen = DocumentGenerator() def gen_rating(): return random.uniform(1, 5) template = { 'id': 'guid', 'status': ['online', 'offline', 'dnd', 'anonymous'], 'age': 'small_int', 'homepage': 'url', 'name': 'name', 'headline': 'sentence', 'about': 'paragraph', 'rating': gen_rating } gen.set_template(template) documents = gen.documents(10) self.assertEqual(len(documents), 10)
def make_users(count=1): from essential_generators import DocumentGenerator template = { '_id': 'guid', 'login': { 'typemap': 'email', 'unique': True }, 'fname': 'word', 'mname': 'word', 'lname': 'word', 'email': 'email', 'dob': 'large_int', 'tags': ['admin', 'buildteam', 'dev', 'mgr'], 'desc': 'sentence' } gen = DocumentGenerator() gen.set_template(template) return gen.documents(count)
#!/usr/bin/python import sys import random from essential_generators import DocumentGenerator gen = DocumentGenerator() N = int(sys.argv[1]) if (len(sys.argv) > 1 and sys.argv[1].isdigit()) else 10 def gen_partNumber(): partId = random.randrange(1000, 9999) partCode = '' while not (len(partCode) >= 4 and partCode.isalnum()): partCode = gen.word() partNumber = str(partId) + str('-') + str(partCode) return str(partNumber) template = {'PartNumber': gen_partNumber, 'Description': 'sentence'} gen.set_template(template) documents = gen.documents(N) print(str(documents))
else: wait_time_rrange = int(wait_time_rrange) doc_gen = DocumentGenerator() template = { 'comment_post_ID': product_id, 'rating': [1, 2, 3, 4, 5], 'comment': 'sentence', 'author': 'name', 'email': 'email', 'submit': 'Submit', 'comment_parent': 0 } doc_gen.set_template(template) fake = Faker() def gen_addr(first_name, last_name, email): ret = { 'first_name': first_name, 'last_name': last_name, 'company': '', 'address_1': fake.street_address(), 'address_2': '', 'city': fake.city(), 'state': fake.state(), 'postcode': fake.zipcode(), 'country': fake.country_code(),