{ "info": { "author": "Ralph-Wang", "author_email": "ralph.wang1024@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "should\n----------------\n\n.. image:: https://img.shields.io/travis/Ralph-Wang/should.svg?style-flat-square\n :target: https://travis-ci.org/Ralph-Wang/should\n.. image:: https://img.shields.io/coveralls/Ralph-Wang/should.svg?style-flat-square\n :target: https://coveralls.io/r/Ralph-Wang/should\n\nBugs: https://github.com/Ralph-Wang/should/issues\nMore Details: https://github.com/Ralph-Wang/should/blob/master/README.md\n\n\u5b89\u88c5:\n----------------\n\n::\n\n pip install should\n\n\n\u4f7f\u7528\u65b9\u6cd5:\n----------------\n\n\n.. code-block:: python\n\n from should import it\n\n # \u4e00\u822c\u7684\u65ad\u8a00\n it(1).should.be.int\n it({}).should.be.no.ok\n it(2).should.be.equal(2)\n it(10).should.be.no.equal(8)\n it([1,2,3]).should.contain(3)\n\n # lambda \u7248\u5f02\u5e38\u65ad\u8a00\n it(lambda: int('abc')).should.throw(ValueError)\n it(lambda: int('123')).should.no.throw(ValueError)\n\n\n- \u66f4\u591a\u4f8b\u5b50\u8bf7\u53c2\u8003 tests_\n\n.. _tests: https://github.com/Ralph-Wang/should/blob/master/tests\n\n\nLicense\n----------------\n\nThe MIT License\n\n\nChange Log\n----------------\n\nv0.5.4\n~~~~~~~~~~~~~~~~\n\n* \u589e\u52a0 subclassof \u63a5\u53e3\n* \u6dfb\u52a0 shouldnt \u53d6\u53cd\u5c5e\u6027\n\nv0.5.3\n~~~~~~~~~~~~~~~~\n\n* \u589e\u52a0 count \u63a5\u53e3\n* \u589e\u52a0 same \u63a5\u53e3, \u5224\u65ad\u662f\u5426\u4e3a\u540c\u4e00\u4e2a\u5bf9\u8c61\n* \u62c6\u5206\u6d4b\u8bd5\u6587\u4ef6\n\nv0.5.2\n~~~~~~~~~~~~~~~~\n\n* \u5c0f\u91cd\u6784, \u5220\u9664 _flag \u5c5e\u6027\n* match/search \u652f\u6301 list \u548c dict. dict \u53ea\u9a8c\u8bc1\u503c\n* .contain \u652f\u6301 contain(v1, v2, v3)\n\nv0.5.1\n~~~~~~~~~~~~~~~~\n\n* \u4fee\u590d #1, \u89e3\u51b3\u81ea\u6d4b\u95ee\u9898\n* \u7ed3\u6784\u5316\u76ee\u5f55, \u8ba9\u4ee3\u7801\u6e05\u6670\u4e00\u70b9\n* \u94fe\u5f0f\u8c03\u7528\u90e8\u5206\u7528\u5143\u7c7b\u6539\u5199\n* less/greater \u6dfb\u52a0 'below/above' \u522b\u540d\n\n\nv0.5.0\n~~~~~~~~~~~~~~~~\n\n* \u5220\u9664\u539f `raises` \u63a5\u53e3, \u4e0d\u518d\u652f\u6301 with should.raises \u8bed\u6cd5\n* `raises` \u63a5\u53e3\u6539\u4e3a `throw` \u7684\u7b49\u4ef7\u63a5\u53e3\n* `key` \u4f1a\u6539\u53d8\u94fe\u5f0f\u8c03\u7528. \u540e\u7eed\u503c\u4e3a\u952e\u6240\u5bf9\u5e94\u7684\u503c\n\nv0.4.8\n~~~~~~~~~~~~~~~~\n\n* fix `throw` \u5728 2.* \u53ea\u80fd\u63a5\u53d7 `str` \u7684\u95ee\u9898\n* \u5982 it(1).should.be.int \u7684\u7c7b\u578b\u65ad\u8a00, \u4e0d\u65ad\u8a00 property\n* proper \u548c own_proper \u589e\u52a0\u522b\u540d property \u548c own_property\n* \u589e\u52a0 properties \u548c own_properties. \u5bf9\u5bf9\u8c61\u652f\u6301\u5217\u8868\u5f0f\u65ad\u8a00\n* \u589e\u52a0 keys, \u5bf9\u5b57\u5178\u652f\u6301\u5217\u8868\u5f0f\u65ad\u8a00\n\nv0.4.7\n~~~~~~~~~~~~~~~~\n\n* \u6dfb\u52a0 `within` \u63a5\u53e3\n* should.py \u6587\u4ef6\u4e2d\u6dfb\u52a0\u81ea\u6587\u6863\n* \u6dfb\u52a0 `proper` / `own_proper` \u63a5\u53e3\n\nv0.4.6\n~~~~~~~~~~~~~~~~\n\n* fix #2. match \u4e0d\u652f\u6301\u591a\u884c\n* \u6dfb\u52a0 `search` \u63a5\u53e3, \u4e0e `match` \u7b49\u4ef7, \u4f46\u66f4\u8d34\u8fd1 Python re \u7684\u63a5\u53e3\n\nv0.4.5\n~~~~~~~~~~~~~~~~\n\n* \u589e\u52a0 `match` \u63a5\u53e3, \u8fdb\u884c\u6b63\u5219\u5339\u914d\u65ad\u8a00\n* \u589e\u52a0 `empty` \u5c5e\u6027, \u76f4\u63a5\u5224\u65ad\u5bb9\u5668\u6216\u5e8f\u5217\u662f\u5426\u4e3a\u7a7a\n* \u53ea\u6709\u8fde\u63a5\u8bcd, be, have \u4f1a\u51fa\u73b0\u5728 Assertion Error \u4e2d\n* `throw` \u63a5\u53e3\u652f\u6301\u65ad\u8a00 throw \u4fe1\u606f\n\nv0.4.4\n~~~~~~~~~~~~~~~~\n\n* \u5b89\u88c5\u5931\u8d25\u4fee\u590d\n\nv0.4.3\n~~~~~~~~~~~~~~~~\n\n* \u7c7b\u578b\u65ad\u8a00\u5982 `it(1).should.be.int` \u652f\u6301\u6240\u6709\u5185\u5efa\u7c7b\u578b\n* \u6dfb\u52a0 `instanceof` \u65ad\u8a00, \u652f\u6301\u5176\u5b83\u7c7b\u578b\u6216\u5f31\u7c7b\u578b\u65ad\u8a00\n* \u94fe\u5f0f\u8c03\u7528 'be'/'have' \u65f6, Error \u4fe1\u606f\u6b63\u786e\u663e\u793a have \u548c be", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Ralph-Wang/should", "keywords": "assert,should,test,BDD", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "should", "package_url": "https://pypi.org/project/should/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/should/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/Ralph-Wang/should" }, "release_url": "https://pypi.org/project/should/0.5.4/", "requires_dist": null, "requires_python": null, "summary": "assert with should", "version": "0.5.4" }, "last_serial": 3709268, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "a02d4cc16caa2c25645c9c993edd27f5", "sha256": "ec32a59859cd7b97c3f8e157c3d06734d99918c2a1a79da1e9692350b12261c6" }, "downloads": -1, "filename": "should-0.1.tar.gz", "has_sig": false, "md5_digest": "a02d4cc16caa2c25645c9c993edd27f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1887, "upload_time": "2014-12-14T07:51:41", "url": "https://files.pythonhosted.org/packages/6a/80/25e7cf619cef952e7b846685235fbe5b5f3d42b6938eed538c849590a174/should-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "f8d1f981e64f7d5099cb191d8668a53d", "sha256": "0659fa737a9ff72d0eaaa8c79bca3cb36c37fea417a7825710fa5a82dbf14063" }, "downloads": -1, "filename": "should-0.2.tar.gz", "has_sig": false, "md5_digest": "f8d1f981e64f7d5099cb191d8668a53d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1947, "upload_time": "2014-12-14T09:01:50", "url": "https://files.pythonhosted.org/packages/3e/d1/4a0cc683fc717cddfa5e9f0815d9a4e46f412d969347e3abe6a8716aa733/should-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "b1c78bc1e5782e5f5afb54941ae9a660", "sha256": "45af28bee875e86ee84ad10a55c5f92cf8229bec2aea2c09d19319091e4e468c" }, "downloads": -1, "filename": "should-0.3.tar.gz", "has_sig": false, "md5_digest": "b1c78bc1e5782e5f5afb54941ae9a660", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1954, "upload_time": "2014-12-14T09:22:21", "url": "https://files.pythonhosted.org/packages/cc/a6/e50a3833f0ae35c20dc2346a47879f06df2d8191d45ea7c8b8616876152e/should-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "c29b0981b269b91f6d80cc1ece7cb68c", "sha256": "22adbce2f01e47ce3d46d2ed1ab92f7be96a109df90cf8eb848fce373624eb69" }, "downloads": -1, "filename": "should-0.3.1.tar.gz", "has_sig": false, "md5_digest": "c29b0981b269b91f6d80cc1ece7cb68c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1975, "upload_time": "2014-12-14T12:07:27", "url": "https://files.pythonhosted.org/packages/4a/98/033e5969435a86351e7269bd4e560a52edf4ab8bfcdec61d17ed77f94477/should-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "a1be60f4df4bbcbd713d1150d1a49a30", "sha256": "c17941834d82a37421b24d57ec8c5cfe9f04390d1efa2ed47fa1cd686cb539c5" }, "downloads": -1, "filename": "should-0.3.2.tar.gz", "has_sig": false, "md5_digest": "a1be60f4df4bbcbd713d1150d1a49a30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2061, "upload_time": "2014-12-15T02:32:28", "url": "https://files.pythonhosted.org/packages/7c/ab/4ef8ae54e298dc8b6273943580e8b7784356e55d9a996e9ec66be2bcc6cc/should-0.3.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "c9923ee4674b48ec1e93bd6d1c5a9806", "sha256": "4856ef3ace2ccb7fc313701dcde973eb600d072be91daabc664fe5a395c2c21d" }, "downloads": -1, "filename": "should-0.4.0.tar.gz", "has_sig": false, "md5_digest": "c9923ee4674b48ec1e93bd6d1c5a9806", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2336, "upload_time": "2014-12-15T12:43:39", "url": "https://files.pythonhosted.org/packages/14/6e/8bf71f84b2541282c1c542ae8b66ff973e69d891155b4a8dd59b5b62da59/should-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "e5e63802ca79548b2f519e22509974c2", "sha256": "a7b7c102d0cab3d484e63222be173fc2592a92a8c45a87610efad7d05a0df2eb" }, "downloads": -1, "filename": "should-0.4.1.tar.gz", "has_sig": false, "md5_digest": "e5e63802ca79548b2f519e22509974c2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2333, "upload_time": "2014-12-16T04:01:15", "url": "https://files.pythonhosted.org/packages/79/2d/bb6a3a59b3706a3fef6e0ff77fc917fff20c018ccbe438fa78c00e844e68/should-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "572f3940ef7840b076a7b2bf181eefad", "sha256": "fda9ebd896a85c6aee5e7595dc8270778c79eb7d7f06f1906e28c5c47ae481ce" }, "downloads": -1, "filename": "should-0.4.2.tar.gz", "has_sig": false, "md5_digest": "572f3940ef7840b076a7b2bf181eefad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2740, "upload_time": "2014-12-16T08:58:53", "url": "https://files.pythonhosted.org/packages/46/74/72ec875eed39e60e90c8f8ad87fa1a150829e55b59f40f06b89c181da523/should-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "11245a6fdc67fec51a8012fa751bade9", "sha256": "5d0162f7d87ea6f66c25fe2a2c7ac5165267f0c3d931a4ab9c934e1fa19ea7cc" }, "downloads": -1, "filename": "should-0.4.3.tar.gz", "has_sig": false, "md5_digest": "11245a6fdc67fec51a8012fa751bade9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2922, "upload_time": "2014-12-17T03:36:05", "url": "https://files.pythonhosted.org/packages/65/fa/3774daaccdf27d242490ff56a3bcae2a66a97b58d7cd8610921a3bc134b5/should-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "955d69ff9f41bb745a7cf895e028a58f", "sha256": "357ed1465a3cc3712032e8fb27f1d00c7b0b0f5f488f7af10a69bdebe2918b6b" }, "downloads": -1, "filename": "should-0.4.4.tar.gz", "has_sig": false, "md5_digest": "955d69ff9f41bb745a7cf895e028a58f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3019, "upload_time": "2014-12-17T12:13:54", "url": "https://files.pythonhosted.org/packages/4b/47/3b065f891b48e86ebd0fb094bdc4ce79a8d66d06e995f1cca3490602a5b0/should-0.4.4.tar.gz" } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "4b3322fdd5e829565d319e4b38983779", "sha256": "fbdbc38a87c4d9125e009be8da99ffa0118dee9b1178789fb06050e2d2607c53" }, "downloads": -1, "filename": "should-0.4.5.tar.gz", "has_sig": false, "md5_digest": "4b3322fdd5e829565d319e4b38983779", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3310, "upload_time": "2014-12-19T03:28:24", "url": "https://files.pythonhosted.org/packages/bf/76/0a672013ff8c801b0c559acb4c1296bf5c62b8a16ad4b2ca6d136b6ac68e/should-0.4.5.tar.gz" } ], "0.4.6": [ { "comment_text": "", "digests": { "md5": "4e032b6e6e55f881545b1ee0b28b04ec", "sha256": "2f640bf51c7441caa13b353f883ef8cce6a80548e329f85ab6ffb3fe28296a33" }, "downloads": -1, "filename": "should-0.4.6.tar.gz", "has_sig": false, "md5_digest": "4e032b6e6e55f881545b1ee0b28b04ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3393, "upload_time": "2014-12-20T13:05:17", "url": "https://files.pythonhosted.org/packages/71/e6/78fe0a5e34755d2d3e760cb18372cef43df63fb90c98d9ed470eb85cb787/should-0.4.6.tar.gz" } ], "0.4.7": [ { "comment_text": "", "digests": { "md5": "3fbac303c2c58204a9d3e4511462bc00", "sha256": "adc4e24f5e38fe5deeae7e00813f610d4648bc8e59f166f85f8da964825c86b7" }, "downloads": -1, "filename": "should-0.4.7.tar.gz", "has_sig": false, "md5_digest": "3fbac303c2c58204a9d3e4511462bc00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3992, "upload_time": "2014-12-22T08:01:51", "url": "https://files.pythonhosted.org/packages/07/54/102f714577260cb25fdb09eb82b27181a3806c922e9802587a2f305003fc/should-0.4.7.tar.gz" } ], "0.4.8": [ { "comment_text": "", "digests": { "md5": "ff92e94d85c1b8ff41e4344be8deb14c", "sha256": "ba9ed9493d8798f040e61691e57a70b45a42dd6f665568ab62790eb472a2258c" }, "downloads": -1, "filename": "should-0.4.8.tar.gz", "has_sig": false, "md5_digest": "ff92e94d85c1b8ff41e4344be8deb14c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4374, "upload_time": "2014-12-23T11:45:09", "url": "https://files.pythonhosted.org/packages/53/41/14f1f7c99d021c8bcb0e70937903eb04339ffac6f57547a8860bc0b5382b/should-0.4.8.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "c1e1c951d6792c67a02aea11953b6c10", "sha256": "2ea1e67f28f7530935a88ff10b3286fc7be960a6e2c5f082b944a3bb3eb51a2c" }, "downloads": -1, "filename": "should-0.5.0.tar.gz", "has_sig": false, "md5_digest": "c1e1c951d6792c67a02aea11953b6c10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4467, "upload_time": "2014-12-25T16:18:59", "url": "https://files.pythonhosted.org/packages/a6/54/9efaf7034a7394f96f723ebd39779fc84734548a922550048999e843ba99/should-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "6ddae869ea6d1583b1164a514c445e69", "sha256": "866de2e1e152791d3033bea202c10c50953f13de6834192a18de2e13d3988a47" }, "downloads": -1, "filename": "should-0.5.1.tar.gz", "has_sig": false, "md5_digest": "6ddae869ea6d1583b1164a514c445e69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4930, "upload_time": "2015-01-03T12:45:12", "url": "https://files.pythonhosted.org/packages/a8/ff/1276b56ff982f7d381743a6ed9c8bbdcb150932af081c28cf450bf9efab0/should-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "22196f8c7c30bce7ffbe9be90a5be7be", "sha256": "a7765c813966038a5a4cdd1c81fab43308881df1949a63377a532214c731497c" }, "downloads": -1, "filename": "should-0.5.2.tar.gz", "has_sig": false, "md5_digest": "22196f8c7c30bce7ffbe9be90a5be7be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5238, "upload_time": "2015-01-05T10:20:41", "url": "https://files.pythonhosted.org/packages/9f/c3/d8fdbccf5d1064cad2d3c5e7a2a783a061f10b6dfcbe56e1fee28d38b9c0/should-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "400c2a8b7c346d2cd555df12c5df77f4", "sha256": "fba0de108c85e1be94d794f92f25285dc122c66a8e239da60e21b36c642d7655" }, "downloads": -1, "filename": "should-0.5.3.tar.gz", "has_sig": false, "md5_digest": "400c2a8b7c346d2cd555df12c5df77f4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5392, "upload_time": "2015-02-03T09:42:58", "url": "https://files.pythonhosted.org/packages/ef/90/450b55c3bf4fe5d8ec12860927d57787858161bfe8a10c2211bd4a0a9c26/should-0.5.3.tar.gz" } ], "0.5.4": [ { "comment_text": "", "digests": { "md5": "cb568610eb513c9c81845b7775e1b2c0", "sha256": "57a9befb07ba36334667a16007cc4a375fe07224c7bde58099604b3832fd5e3f" }, "downloads": -1, "filename": "should-0.5.4.tar.gz", "has_sig": false, "md5_digest": "cb568610eb513c9c81845b7775e1b2c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6726, "upload_time": "2016-01-20T02:57:33", "url": "https://files.pythonhosted.org/packages/28/a5/e4c48f30b4172bff8e603c4eb02f31f94bd8a0c063900e35bcfbdac53f1a/should-0.5.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cb568610eb513c9c81845b7775e1b2c0", "sha256": "57a9befb07ba36334667a16007cc4a375fe07224c7bde58099604b3832fd5e3f" }, "downloads": -1, "filename": "should-0.5.4.tar.gz", "has_sig": false, "md5_digest": "cb568610eb513c9c81845b7775e1b2c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6726, "upload_time": "2016-01-20T02:57:33", "url": "https://files.pythonhosted.org/packages/28/a5/e4c48f30b4172bff8e603c4eb02f31f94bd8a0c063900e35bcfbdac53f1a/should-0.5.4.tar.gz" } ] }