From 2466ce83db0ae3bab76e313d496760d4d85ab133 Mon Sep 17 00:00:00 2001 From: JohnathanCh Date: Wed, 26 Apr 2023 01:07:52 -0700 Subject: [PATCH] done --- Pipfile | 1 + Pipfile.lock | 260 +++++++++++++----- freebies.db | 0 lib/debug.py | 20 +- lib/freebies.db | Bin 20480 -> 200704 bytes ..._create_freebies_table_and_associations.py | 37 +++ lib/models.py | 71 ++++- lib/seed.py | 47 +++- 8 files changed, 363 insertions(+), 73 deletions(-) create mode 100644 freebies.db create mode 100644 lib/migrations/versions/0d82b8c5d67a_create_freebies_table_and_associations.py diff --git a/Pipfile b/Pipfile index 63c79cd98..5c202036e 100644 --- a/Pipfile +++ b/Pipfile @@ -9,6 +9,7 @@ importlib-metadata = "6.0.0" importlib-resources = "5.10.0" ipdb = "0.13.9" sqlalchemy = "1.4.42" +pytest = "*" [dev-packages] diff --git a/Pipfile.lock b/Pipfile.lock index 3923f4a97..401c1d4f4 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "fa62c636b7ae5acb4993fc7b007a651c55b562aa29962a9a8585ec314b352ae6" + "sha256": "6b7e349bbbb29f4ad52d5c0ef631d40060f7afec7d3db3552b729b004ece2601" }, "pipfile-spec": 6, "requires": { @@ -18,11 +18,11 @@ "default": { "alembic": { "hashes": [ - "sha256:6880dec4f28dd7bd999d2ed13fbe7c9d4337700a44d11a524c0ce0c59aaf0dbd", - "sha256:e8a6ff9f3b1887e1fed68bfb8fb9a000d8f61c21bdcc85b67bb9f87fcbc4fce3" + "sha256:457eafbdc0769d855c2c92cbafe6b7f319f916c80cf4ed02b8f394f38b51b89d", + "sha256:8b48368f6533c064b39c024e1daba15ae7f947eac84185c28c06bbe1301a5497" ], "index": "pypi", - "version": "==1.9.2" + "version": "==1.10.2" }, "appnope": { "hashes": [ @@ -39,6 +39,14 @@ ], "version": "==2.2.1" }, + "attrs": { + "hashes": [ + "sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836", + "sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99" + ], + "markers": "python_version >= '3.6'", + "version": "==22.2.0" + }, "backcall": { "hashes": [ "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e", @@ -54,6 +62,14 @@ "markers": "python_version < '3.11' and python_version >= '3.7'", "version": "==5.1.1" }, + "exceptiongroup": { + "hashes": [ + "sha256:232c37c63e4f682982c8b6459f33a8981039e5fb8756b2074364e5055c498c9e", + "sha256:d484c3090ba2889ae2928419117447a14daf3c1231d5e30d0aae34f354f01785" + ], + "markers": "python_version < '3.11'", + "version": "==1.1.1" + }, "executing": { "hashes": [ "sha256:0314a69e37426e3608aada02473b4161d4caf5a4b244d1d0c48072b8fee7bacc", @@ -61,37 +77,111 @@ ], "version": "==1.2.0" }, + "greenlet": { + "hashes": [ + "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a", + "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a", + "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43", + "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33", + "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8", + "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088", + "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca", + "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343", + "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645", + "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db", + "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df", + "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3", + "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86", + "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2", + "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a", + "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf", + "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7", + "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394", + "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40", + "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3", + "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6", + "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74", + "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0", + "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3", + "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91", + "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5", + "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9", + "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8", + "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b", + "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6", + "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb", + "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73", + "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b", + "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df", + "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9", + "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f", + "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0", + "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857", + "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a", + "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249", + "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30", + "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292", + "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b", + "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d", + "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b", + "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c", + "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca", + "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7", + "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75", + "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae", + "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b", + "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470", + "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564", + "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9", + "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099", + "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0", + "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5", + "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19", + "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1", + "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526" + ], + "markers": "platform_machine == 'aarch64' or (platform_machine == 'ppc64le' or (platform_machine == 'x86_64' or (platform_machine == 'amd64' or (platform_machine == 'AMD64' or (platform_machine == 'win32' or platform_machine == 'WIN32')))))", + "version": "==2.0.2" + }, "importlib-metadata": { "hashes": [ - "sha256:7efb448ec9a5e313a57655d35aa54cd3e01b7e1fbcf72dce1bf06119420f5bad", - "sha256:e354bedeb60efa6affdcc8ae121b73544a7aa74156d047311948f6d711cd378d" + "sha256:43ce9281e097583d758c2c708c4376371261a02c34682491a8e98352365aad20", + "sha256:ff80f3b5394912eb1b108fcfd444dc78b7f1f3e16b16188054bd01cb9cb86f09" ], "index": "pypi", - "version": "==6.0.0" + "version": "==6.1.0" }, "importlib-resources": { "hashes": [ - "sha256:7d543798b0beca10b6a01ac7cafda9f822c54db9e8376a6bf57e0cbd74d486b6", - "sha256:e4a96c8cc0339647ff9a5e0550d9f276fc5a01ffa276012b58ec108cfd7b8484" + "sha256:4be82589bf5c1d7999aedf2a45159d10cb3ca4f19b2271f8792bc8e6da7b22f6", + "sha256:7b1deeebbf351c7578e09bf2f63fa2ce8b5ffec296e0d349139d43cca061a81a" ], "index": "pypi", - "version": "==5.10.2" + "version": "==5.12.0" + }, + "iniconfig": { + "hashes": [ + "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3", + "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374" + ], + "markers": "python_version >= '3.7'", + "version": "==2.0.0" }, "ipdb": { "hashes": [ - "sha256:c23b6736f01fd4586cc2ecbebdf79a5eb454796853e1cd8f2ed3b7b91d4a3e93", - "sha256:f74c2f741c18b909eaf89f19fde973f745ac721744aa1465888ce45813b63a9c" + "sha256:45529994741c4ab6d2388bfa5d7b725c2cf7fe9deffabdb8a6113aa5ed449ed4", + "sha256:e3ac6018ef05126d442af680aad863006ec19d02290561ac88b8b1c0b0cfc726" ], "index": "pypi", - "version": "==0.13.11" + "version": "==0.13.13" }, "ipython": { "hashes": [ - "sha256:da01e6df1501e6e7c32b5084212ddadd4ee2471602e2cf3e0190f4de6b0ea481", - "sha256:f3bf2c08505ad2c3f4ed5c46ae0331a8547d36bf4b21a451e8ae80c0791db95b" + "sha256:1c183bf61b148b00bcebfa5d9b39312733ae97f6dad90d7e9b4d86c8647f498c", + "sha256:a950236df04ad75b5bc7f816f9af3d74dc118fd42f2ff7e80e8e60ca1f182e2d" ], "markers": "python_version < '3.11' and python_version >= '3.7'", - "version": "==8.8.0" + "version": "==8.12.0" }, "jedi": { "hashes": [ @@ -173,6 +263,14 @@ "markers": "python_version >= '3.5'", "version": "==0.1.6" }, + "packaging": { + "hashes": [ + "sha256:714ac14496c3e68c99c29b00845f7a2b85f3bb6f1078fd9f72fd20f0570002b2", + "sha256:b6ad297f8907de0fa2fe1ccbd26fdaf387f5f47c7275fedf8cce89f99446cf97" + ], + "markers": "python_version >= '3.7'", + "version": "==23.0" + }, "parso": { "hashes": [ "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0", @@ -196,13 +294,21 @@ ], "version": "==0.7.5" }, + "pluggy": { + "hashes": [ + "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159", + "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3" + ], + "markers": "python_version >= '3.6'", + "version": "==1.0.0" + }, "prompt-toolkit": { "hashes": [ - "sha256:3e163f254bef5a03b146397d7c1963bd3e2812f0964bb9a24e6ec761fd28db63", - "sha256:aa64ad242a462c5ff0363a7b9cfe696c20d55d9fc60c11fd8e632d064804d305" + "sha256:23ac5d50538a9a38c8bde05fecb47d0b403ecd0662857a86f886f798563d5b9b", + "sha256:45ea77a2f7c60418850331366c81cf6b5b9cf4c7fd34616f733c5427e6abbb1f" ], - "markers": "python_full_version >= '3.6.2'", - "version": "==3.0.36" + "markers": "python_version >= '3.7'", + "version": "==3.0.38" }, "ptyprocess": { "hashes": [ @@ -226,6 +332,14 @@ "markers": "python_version >= '3.6'", "version": "==2.14.0" }, + "pytest": { + "hashes": [ + "sha256:130328f552dcfac0b1cec75c12e3f005619dc5f874f0a06e8ff7263f0ee6225e", + "sha256:c99ab0c73aceb050f68929bc93af19ab6db0558791c6a0715723abe9d0ade9d4" + ], + "index": "pypi", + "version": "==7.2.2" + }, "six": { "hashes": [ "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926", @@ -236,50 +350,50 @@ }, "sqlalchemy": { "hashes": [ - "sha256:07e48cbcdda6b8bc7a59d6728bd3f5f574ffe03f2c9fb384239f3789c2d95c2e", - "sha256:18cafdb27834fa03569d29f571df7115812a0e59fd6a3a03ccb0d33678ec8420", - "sha256:1b1e5e96e2789d89f023d080bee432e2fef64d95857969e70d3cadec80bd26f0", - "sha256:315676344e3558f1f80d02535f410e80ea4e8fddba31ec78fe390eff5fb8f466", - "sha256:31de1e2c45e67a5ec1ecca6ec26aefc299dd5151e355eb5199cd9516b57340be", - "sha256:3d94682732d1a0def5672471ba42a29ff5e21bb0aae0afa00bb10796fc1e28dd", - "sha256:3ec187acf85984263299a3f15c34a6c0671f83565d86d10f43ace49881a82718", - "sha256:4847f4b1d822754e35707db913396a29d874ee77b9c3c3ef3f04d5a9a6209618", - "sha256:4d112b0f3c1bc5ff70554a97344625ef621c1bfe02a73c5d97cac91f8cd7a41e", - "sha256:51e1ba2884c6a2b8e19109dc08c71c49530006c1084156ecadfaadf5f9b8b053", - "sha256:535377e9b10aff5a045e3d9ada8a62d02058b422c0504ebdcf07930599890eb0", - "sha256:5dbf17ac9a61e7a3f1c7ca47237aac93cabd7f08ad92ac5b96d6f8dea4287fc1", - "sha256:5f752676fc126edc1c4af0ec2e4d2adca48ddfae5de46bb40adbd3f903eb2120", - "sha256:64cb0ad8a190bc22d2112001cfecdec45baffdf41871de777239da6a28ed74b6", - "sha256:6913b8247d8a292ef8315162a51931e2b40ce91681f1b6f18f697045200c4a30", - "sha256:69fac0a7054d86b997af12dc23f581cf0b25fb1c7d1fed43257dee3af32d3d6d", - "sha256:7001f16a9a8e06488c3c7154827c48455d1c1507d7228d43e781afbc8ceccf6d", - "sha256:7b81b1030c42b003fc10ddd17825571603117f848814a344d305262d370e7c34", - "sha256:7f8267682eb41a0584cf66d8a697fef64b53281d01c93a503e1344197f2e01fe", - "sha256:887865924c3d6e9a473dc82b70977395301533b3030d0f020c38fd9eba5419f2", - "sha256:9167d4227b56591a4cc5524f1b79ccd7ea994f36e4c648ab42ca995d28ebbb96", - "sha256:939f9a018d2ad04036746e15d119c0428b1e557470361aa798e6e7d7f5875be0", - "sha256:955162ad1a931fe416eded6bb144ba891ccbf9b2e49dc7ded39274dd9c5affc5", - "sha256:984ee13543a346324319a1fb72b698e521506f6f22dc37d7752a329e9cd00a32", - "sha256:9883f5fae4fd8e3f875adc2add69f8b945625811689a6c65866a35ee9c0aea23", - "sha256:a1ad90c97029cc3ab4ffd57443a20fac21d2ec3c89532b084b073b3feb5abff3", - "sha256:a3714e5b33226131ac0da60d18995a102a17dddd42368b7bdd206737297823ad", - "sha256:ae067ab639fa499f67ded52f5bc8e084f045d10b5ac7bb928ae4ca2b6c0429a5", - "sha256:b33ffbdbbf5446cf36cd4cc530c9d9905d3c2fe56ed09e25c22c850cdb9fac92", - "sha256:b6e4cb5c63f705c9d546a054c60d326cbde7421421e2d2565ce3e2eee4e1a01f", - "sha256:b7f4b6aa6e87991ec7ce0e769689a977776db6704947e562102431474799a857", - "sha256:c04144a24103135ea0315d459431ac196fe96f55d3213bfd6d39d0247775c854", - "sha256:c522e496f9b9b70296a7675272ec21937ccfc15da664b74b9f58d98a641ce1b6", - "sha256:c5a99282848b6cae0056b85da17392a26b2d39178394fc25700bcf967e06e97a", - "sha256:c7a46639ba058d320c9f53a81db38119a74b8a7a1884df44d09fbe807d028aaf", - "sha256:d4b1cc7835b39835c75cf7c20c926b42e97d074147c902a9ebb7cf2c840dc4e2", - "sha256:d4d164df3d83d204c69f840da30b292ac7dc54285096c6171245b8d7807185aa", - "sha256:d61e9ecc849d8d44d7f80894ecff4abe347136e9d926560b818f6243409f3c86", - "sha256:d68e1762997bfebf9e5cf2a9fd0bcf9ca2fdd8136ce7b24bbd3bbfa4328f3e4a", - "sha256:e3c1808008124850115a3f7e793a975cfa5c8a26ceeeb9ff9cbb4485cac556df", - "sha256:f8cb80fe8d14307e4124f6fad64dfd87ab749c9d275f82b8b4ec84c84ecebdbe" + "sha256:09b6a94bbb1507b3fc75a3c98491f990b80a859eb5227378f6dac908dff74396", + "sha256:0cdc65cbb95ae6813c51acffa65dd8d8272a52da42e3967fc98788fe185a0e0c", + "sha256:21698ac65afe477400aacb56244b607477c192892e2f7a70492cae1e13f73040", + "sha256:250e158a1f36c965dde1f949366eae9a57504a8cd7a4d968e66c2d0b3c18198d", + "sha256:2cc70331b7aed25fed5260cf30a69e42eaf3d887a23a6e4f29a51167ae8a00e1", + "sha256:32af8923cfe7b115d40b88604412450d2e4714f4b9a69b1966dfe6012e254789", + "sha256:337ae79dc63b1c957dd2e9e7eed5235492886e2af45d8df4b28748ee4859b588", + "sha256:3a1eb8ed5dc2a7bc554a612a57253f3682aea7e4c54c742153aef6a12fde10ee", + "sha256:3ca04c2ccf6f70278905a371ae6eb61494e8c388e98cba909bc9458ceb73dda5", + "sha256:42207a5237d8b211df1c04da4a8700bb9f366f5d7be14b1a2e39cc33d330428c", + "sha256:4223002ab7faac63384019feb31eab4ae2233753fd06ea95690d4e148b5bf80d", + "sha256:50fa610ac1e45e9adc161227cccbd5c75f8eef25b2ad4a0e080d48c27023415d", + "sha256:5a64345a6f41c8c011df3f498cee8de39d9682ca2de14698b68a50bf3a03f6e5", + "sha256:5b030f91dd310c0f1d7da0654fcc9d8574fe430693e29c544f5558c2426e08eb", + "sha256:68b328500a20f328db6af2c6839eb69e3791b2cd544f5808a4b0123b130c7571", + "sha256:692a2b1e0c82c678c84ccb3a9a226e0553dd115be3d5c54b1bb6ef35bc464da9", + "sha256:6a091b9166ab9d8ff77c3155140105e76df1d585632fb9367a31b517960df78a", + "sha256:6c5e056a6dc1ce29d5e0e54bc1ce669f3035ec18cb7e5c853122b5fdfe216f8f", + "sha256:6c8e546c249f0d23821f4b31e5adfba8e39bc90140d39f7086d4a8422d1f0fa6", + "sha256:6d82bb74a44f103d566f6c86d6db0ed944e99a7da93d6490c1e987a2b91d5613", + "sha256:6f33587541eb6eb0292e82b314f5ef53159f63f14ae1c08b5ef6195732523afa", + "sha256:7e0f74c66b2d0081cee5093150407ec43d23d0d5c70aa5b41f438ead1d39bc8d", + "sha256:81ada150345ef9c709b647e2bcc8f688d62de6b8f06a7544bed76bef328c6636", + "sha256:8a215d3e9de2af881c4eee60bf2b3576fb2eeb591a9af37ff2919cd74b68f162", + "sha256:8df6722580ff89295e9d11b781d7a50ff6e48fdfe1c81362000925b4d4cbab31", + "sha256:9a981a65dc0082009399eac6600b0983120bc3b850f3c1ed986f68648d9dbb4c", + "sha256:a1906c954ee7287d46877636a66da157fc83553851013e42c862653ddacb380b", + "sha256:aaf42183f93ad3801bc08c8a111de16802a2c32d16dcb9700daf1a8ae12d9d28", + "sha256:af0683c905c856db70adf6d0f84398785f7be6cb4ffdad20d8e16fe426bdf6e8", + "sha256:b3bdbd9a5b2788b5c51c4fffa2f875103d3c6d01b8f0dc4abbf075cea11741f5", + "sha256:b4c73a3537f928ebf687244f2af9d477b3b14640b4472fcb2456ee0193850ba1", + "sha256:c2590fd682d3b9dbecb2710ba83b28ba9df18e0c3c26c78bb950715566784723", + "sha256:cd405d224c0f83f267bfcc430bd275195cb48bb9576f6949911faec16bba1216", + "sha256:cf1447ec09d7c9ef0b3a65cea905690ed78ed88717beaac537271c005b0e4ea2", + "sha256:d6753512214d0de6a5a1c05fe716a7d643c927eb0495341db6526577960cbb55", + "sha256:d713d8c4b36c4f69eef33a70a4521e37b75a3ac9c86ee96626c4b052337978cc", + "sha256:e424a385a234e0bbaac69b6b09894ce99aa285518dd9397846e78214671ec0b4", + "sha256:e8707ba6e783d144209dab0324cc72147a1de34d404a61a08eef96fbb3c8909f", + "sha256:ea2976a98076f44e7e8ab9a90b6dfa357253edddf687294b1bcd852ffe20e526", + "sha256:f12cd526188f36f161eb71fb275b06d1879c565b07cf0ab2c2408c5059df1fed", + "sha256:fa72fb1be5e6704d697471eb5cc07bf9cd98689be11ffa724efe2a3666d0f6c1" ], "index": "pypi", - "version": "==1.4.46" + "version": "==2.0.8" }, "stack-data": { "hashes": [ @@ -298,11 +412,19 @@ }, "traitlets": { "hashes": [ - "sha256:32500888f5ff7bbf3b9267ea31748fa657aaf34d56d85e60f91dda7dc7f5785b", - "sha256:a1ca5df6414f8b5760f7c5f256e326ee21b581742114545b462b35ffe3f04861" + "sha256:9e6ec080259b9a5940c797d58b613b5e31441c2257b87c2e795c5228ae80d2d8", + "sha256:f6cde21a9c68cf756af02035f72d5a723bf607e862e7be33ece505abf4a3bad9" + ], + "markers": "python_version >= '3.7'", + "version": "==5.9.0" + }, + "typing-extensions": { + "hashes": [ + "sha256:5cb5f4a79139d699607b3ef622a1dedafa84e115ab0024e0d9c044a9479ca7cb", + "sha256:fb33085c39dd998ac16d1431ebc293a8b3eedd00fd4a32de0ff79002c19511b4" ], "markers": "python_version >= '3.7'", - "version": "==5.8.1" + "version": "==4.5.0" }, "wcwidth": { "hashes": [ @@ -313,11 +435,11 @@ }, "zipp": { "hashes": [ - "sha256:83a28fcb75844b5c0cdaf5aa4003c2d728c77e05f5aeabe8e95e56727005fbaa", - "sha256:a7a22e05929290a67401440b39690ae6563279bced5f314609d9d03798f56766" + "sha256:112929ad649da941c23de50f356a2b5570c954b65150642bccdd66bf194d224b", + "sha256:48904fc76a60e542af151aded95726c1a5c34ed43ab4134b597665c86d7ad556" ], - "markers": "python_version < '3.10'", - "version": "==3.11.0" + "markers": "python_version >= '3.7'", + "version": "==3.15.0" } }, "develop": {} diff --git a/freebies.db b/freebies.db new file mode 100644 index 000000000..e69de29bb diff --git a/lib/debug.py b/lib/debug.py index 4f922eb69..24e1ce65c 100644 --- a/lib/debug.py +++ b/lib/debug.py @@ -1,9 +1,27 @@ #!/usr/bin/env python3 from sqlalchemy import create_engine +from sqlalchemy.orm import sessionmaker + +from faker import Faker +fake = Faker() + +from models import Company, Dev, Freebie, session -from models import Company, Dev if __name__ == '__main__': engine = create_engine('sqlite:///freebies.db') + # Session = sessionmaker(bind=engine) + # session = Session() + # session.rollback() + + + companies = session.query(Company).all() + devs = session.query(Dev).all() + freebies = session.query(Freebie).all() + + dev1=devs[0] + company1 = companies[0] + freebie1 = freebies[0] + import ipdb; ipdb.set_trace() diff --git a/lib/freebies.db b/lib/freebies.db index 12beb1c963e832db481e7a7493e3029e691ac4dc..3c6ba956a5b15dee287eab1352a7b45f44102665 100644 GIT binary patch literal 200704 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 delta 119 zcmZozz|*jRae}lUD+2=q2*UvLL>*&MRtCLzSzi7h3@m(74E((OJNfGQq&5o*EaTlQ u#dk}P$285{DB08^Db2(pd6U8yej#K5UXW1&K-Ks8Cr*%_w1I^Q!2 None: + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('freebies', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('item_name', sa.String(), nullable=True), + sa.Column('value', sa.Integer(), nullable=True), + sa.Column('company_id', sa.Integer(), nullable=True), + sa.Column('dev_id', sa.Integer(), nullable=True), + sa.ForeignKeyConstraint(['company_id'], ['companies.id'], name=op.f('fk_freebies_company_id_companies')), + sa.ForeignKeyConstraint(['dev_id'], ['devs.id'], name=op.f('fk_freebies_dev_id_devs')), + sa.PrimaryKeyConstraint('id') + ) + # ### end Alembic commands ### + + +def downgrade() -> None: + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('freebies') + # ### end Alembic commands ### diff --git a/lib/models.py b/lib/models.py index 2681bee5a..93e1df1a2 100644 --- a/lib/models.py +++ b/lib/models.py @@ -1,6 +1,9 @@ -from sqlalchemy import ForeignKey, Column, Integer, String, MetaData -from sqlalchemy.orm import relationship, backref +from sqlalchemy import ForeignKey, Column, Integer, String, MetaData, Table +from sqlalchemy.orm import relationship, backref, sessionmaker +from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.ext.declarative import declarative_base +from sqlalchemy import create_engine +# from debug import session convention = { "fk": "fk_%(table_name)s_%(column_0_name)s_%(referred_table_name)s", @@ -9,21 +12,85 @@ Base = declarative_base(metadata=metadata) +engine = create_engine('sqlite:///freebies.db') +Session = sessionmaker(bind=engine) +session = Session() + +# freebies = Table( +# 'freebies', +# Base.metadata, +# Column('dev_id', ForeignKey('dev.id'), primary_key=True), +# Column('company_id', ForeignKey('company.id'), primary_key=True), +# extend_existing=True +# ) + class Company(Base): __tablename__ = 'companies' id = Column(Integer(), primary_key=True) name = Column(String()) founding_year = Column(Integer()) + + freebies = relationship('Freebie', backref=backref('company')) + devs = association_proxy('freebies', 'dev', creator=lambda d: Freebie(dev=d)) def __repr__(self): return f'' + + def give_freebie(self, dev, item_name, value): + freebie = Freebie(dev=dev, item_name=item_name, value=value, company_id=self.id) + session.add(freebie) + session.commit() + + @classmethod + def oldest_company(cls): + return session.query(cls).order_by(cls.founding_year.asc()).first() + class Dev(Base): __tablename__ = 'devs' id = Column(Integer(), primary_key=True) name= Column(String()) + + freebies = relationship('Freebie', backref=backref('dev')) + companies = association_proxy('freebies', 'company', creator=lambda co: Freebie(company=co)) + + def received_one(self,item): + for freebie in self.freebies: + if freebie.item_name == item: + return True + return False + + def give_away(self, other_dev, freebie): + if freebie in self.freebies: + freebie.dev = other_dev + return f"{freebie.item_name} now belongs to {other_dev.name}" + else: + return "Aye! Did you steal that!?" def __repr__(self): return f'' + +class Freebie(Base): + __tablename__ = 'freebies' + + id = Column(Integer(), primary_key=True) + item_name = Column(String()) + value = Column(Integer()) + company_id = Column(Integer(), ForeignKey('companies.id')) + dev_id = Column(Integer(), ForeignKey('devs.id')) + + def __repr__(self): + return f"Freebie(id={self.id}), " + \ + f"item_name={self.item_name}, " + \ + f"value={self.value}, " + \ + f"company={self.company_id}, " + \ + f"dev={self.dev_id}" + + def print_details(self): + dev = session.query(Dev).filter(Dev.id == self.dev.id) + return f"{self.dev.name} owns a {self.item_name} from {self.company.name}" + + + diff --git a/lib/seed.py b/lib/seed.py index b16becbbb..23ed5a8da 100644 --- a/lib/seed.py +++ b/lib/seed.py @@ -1,3 +1,48 @@ #!/usr/bin/env python3 -# Script goes here! +from random import choice as rc +from faker import Faker +fake = Faker() + +from sqlalchemy import create_engine +from sqlalchemy.orm import sessionmaker + +from models import Company, Dev, Freebie + +engine = create_engine('sqlite:///freebies.db') +Session = sessionmaker(bind=engine) +session = Session() + +print("deleting records") +def delete_records(): + session.query(Company).delete() + session.query(Dev).delete() + session.query(Freebie).delete() + session.commit() + +print("creating new records") +def create_records(): + companies = [Company(name=fake.company(), founding_year=int(fake.year())) for i in range(50)] + devs = [Dev(name=fake.name()) for i in range(1000)] + freebies = [Freebie(item_name=fake.word(), value=rc(range(2000))) for i in range(5000)] + session.add_all(companies + devs + freebies) + session.commit() + return companies, devs, freebies + +print("creating relationships") +def relate_many_to_many(companies, devs, freebies): + for freebie in freebies: + freebie.company = rc(companies) + freebie.dev = rc(devs) + + session.add_all(freebies + companies + devs) + session.commit() + return companies, devs, freebies + +print("putting it all together...") +if __name__ == '__main__': + delete_records() + companies, devs, freebies = create_records() + companies, devs, freebies = relate_many_to_many(companies, devs, freebies) + print("Success!") + \ No newline at end of file