scaevola 1.0.10__tar.gz → 1.0.12__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: scaevola
3
- Version: 1.0.10
4
- Summary: class with preset right handed magic methods
3
+ Version: 1.0.12
4
+ Summary: This project provides a class with preset right handed magic methods.
5
5
  Author-email: Johannes <johannes-programming@mailfence.com>
6
6
  License: The MIT License (MIT)
7
7
 
@@ -24,16 +24,18 @@ License: The MIT License (MIT)
24
24
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
25
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
26
  SOFTWARE.
27
- Project-URL: Documentation, https://pypi.org/project/scaevola
28
27
  Project-URL: Download, https://pypi.org/project/scaevola/#files
29
28
  Project-URL: Index, https://pypi.org/project/scaevola/
30
- Project-URL: Source, https://github.com/johannes-programming/scaevola
29
+ Project-URL: Source, https://github.com/johannes-programming/scaevola/
31
30
  Project-URL: Website, https://scaevola.johannes-programming.online/
32
31
  Classifier: Development Status :: 5 - Production/Stable
33
32
  Classifier: License :: OSI Approved :: MIT License
33
+ Classifier: Natural Language :: English
34
+ Classifier: Operating System :: OS Independent
34
35
  Classifier: Programming Language :: Python
35
36
  Classifier: Programming Language :: Python :: 3
36
37
  Classifier: Programming Language :: Python :: 3 :: Only
38
+ Classifier: Typing :: Typed
37
39
  Requires-Python: >=3.8
38
40
  Description-Content-Type: text/x-rst
39
41
  License-File: LICENSE.txt
@@ -42,6 +44,4 @@ License-File: LICENSE.txt
42
44
  scaevola
43
45
  ========
44
46
 
45
- Pad nucleotide sequence.
46
- Visit the website for more information:
47
- `https://scaevola.johannes-programming.online <https://scaevola.johannes-programming.online>`_
47
+ Visit the website for more information: `https://scaevola.johannes-programming.online/ <https://scaevola.johannes-programming.online/>`_
@@ -0,0 +1,5 @@
1
+ ========
2
+ scaevola
3
+ ========
4
+
5
+ Visit the website for more information: `https://scaevola.johannes-programming.online/ <https://scaevola.johannes-programming.online/>`_
@@ -11,24 +11,26 @@ authors = [
11
11
  classifiers = [
12
12
  "Development Status :: 5 - Production/Stable",
13
13
  "License :: OSI Approved :: MIT License",
14
+ "Natural Language :: English",
15
+ "Operating System :: OS Independent",
14
16
  "Programming Language :: Python",
15
17
  "Programming Language :: Python :: 3",
16
18
  "Programming Language :: Python :: 3 :: Only",
19
+ "Typing :: Typed",
17
20
  ]
18
21
  dependencies = []
19
- description = "class with preset right handed magic methods"
22
+ description = "This project provides a class with preset right handed magic methods."
20
23
  keywords = []
21
24
  name = "scaevola"
22
25
  readme = "README.rst"
23
26
  requires-python = ">=3.8"
24
- version = "1.0.10"
27
+ version = "1.0.12"
25
28
 
26
29
  [project.license]
27
30
  file = "LICENSE.txt"
28
31
 
29
32
  [project.urls]
30
- Documentation = "https://pypi.org/project/scaevola"
31
33
  Download = "https://pypi.org/project/scaevola/#files"
32
34
  Index = "https://pypi.org/project/scaevola/"
33
- Source = "https://github.com/johannes-programming/scaevola"
35
+ Source = "https://github.com/johannes-programming/scaevola/"
34
36
  Website = "https://scaevola.johannes-programming.online/"
@@ -0,0 +1,69 @@
1
+ from typing import *
2
+
3
+ __all__ = ["Scaevola"]
4
+
5
+
6
+ class Scaevola:
7
+ def __ge__(self, other: Any) -> Any:
8
+ "This magic method implements self>=other."
9
+ return type(self)(other) <= self
10
+
11
+ def __gt__(self, other: Any) -> Any:
12
+ "This magic method implements self>other."
13
+ return type(self)(other) < self
14
+
15
+ def __radd__(self, other: Any) -> Any:
16
+ "This magic method implements other+self."
17
+ return type(self)(other) + self
18
+
19
+ def __rand__(self, other: Any) -> Any:
20
+ "This magic method implements other&self."
21
+ return type(self)(other) & self
22
+
23
+ def __rdivmod__(self, other: Any) -> Any:
24
+ "This magic method implements divmod(other, self)."
25
+ return divmod(type(self)(other), self)
26
+
27
+ def __rfloordiv__(self, other: Any) -> Any:
28
+ "This magic method implements other//self."
29
+ return type(self)(other) // self
30
+
31
+ def __rlshift__(self, other: Any) -> Any:
32
+ "This magic method implements other<<self."
33
+ return type(self)(other) << self
34
+
35
+ def __rmatmul__(self, other: Any) -> Any:
36
+ "This magic method implements other@self."
37
+ return type(self)(other) @ self
38
+
39
+ def __rmod__(self, other: Any) -> Any:
40
+ "This magic method implements other%self."
41
+ return type(self)(other) % self
42
+
43
+ def __rmul__(self, other: Any) -> Any:
44
+ "This magic method implements other*self."
45
+ return type(self)(other) * self
46
+
47
+ def __ror__(self, other: Any) -> Any:
48
+ "This magic method implements other|self."
49
+ return type(self)(other) | self
50
+
51
+ def __rpow__(self, other: Any) -> Any:
52
+ "This magic method implements pow(other, self)."
53
+ return type(self)(other) ** self
54
+
55
+ def __rrshift__(self, other: Any) -> Any:
56
+ "This magic method implements other>>self."
57
+ return type(self)(other) >> self
58
+
59
+ def __rsub__(self, other: Any) -> Any:
60
+ "This magic method implements other-self."
61
+ return type(self)(other) - self
62
+
63
+ def __rtruediv__(self, other: Any) -> Any:
64
+ "This magic method implements other/self."
65
+ return type(self)(other) / self
66
+
67
+ def __rxor__(self, other: Any) -> Any:
68
+ "This magic method implements other^self."
69
+ return type(self)(other) ^ self
@@ -3,7 +3,7 @@ import unittest
3
3
  __all__ = ["test"]
4
4
 
5
5
 
6
- def test():
6
+ def test() -> unittest.TextTestResult:
7
7
  loader = unittest.TestLoader()
8
8
  tests = loader.discover(start_dir="scaevola.tests")
9
9
  runner = unittest.TextTestRunner()
@@ -0,0 +1,41 @@
1
+ import unittest
2
+
3
+ from scaevola.core import Scaevola
4
+
5
+
6
+ class TestScaevolaDocstrings(unittest.TestCase):
7
+ def test_methods_have_docstrings(self):
8
+ methods_to_check = [
9
+ "__ge__",
10
+ "__gt__",
11
+ "__radd__",
12
+ "__rand__",
13
+ "__rdivmod__",
14
+ "__rfloordiv__",
15
+ "__rlshift__",
16
+ "__rmatmul__",
17
+ "__rmod__",
18
+ "__rmul__",
19
+ "__ror__",
20
+ "__rpow__",
21
+ "__rrshift__",
22
+ "__rsub__",
23
+ "__rtruediv__",
24
+ "__rxor__",
25
+ ]
26
+
27
+ for name in methods_to_check:
28
+ method = getattr(Scaevola, name, None)
29
+ with self.subTest(method=name):
30
+ self.assertIsNotNone(
31
+ method.__doc__, f"Method {name} is missing a docstring"
32
+ )
33
+ self.assertGreater(
34
+ len(method.__doc__.strip()),
35
+ 0,
36
+ f"Method {name} has an empty docstring",
37
+ )
38
+
39
+
40
+ if __name__ == "__main__":
41
+ unittest.main()
@@ -1,7 +1,7 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: scaevola
3
- Version: 1.0.10
4
- Summary: class with preset right handed magic methods
3
+ Version: 1.0.12
4
+ Summary: This project provides a class with preset right handed magic methods.
5
5
  Author-email: Johannes <johannes-programming@mailfence.com>
6
6
  License: The MIT License (MIT)
7
7
 
@@ -24,16 +24,18 @@ License: The MIT License (MIT)
24
24
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
25
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
26
  SOFTWARE.
27
- Project-URL: Documentation, https://pypi.org/project/scaevola
28
27
  Project-URL: Download, https://pypi.org/project/scaevola/#files
29
28
  Project-URL: Index, https://pypi.org/project/scaevola/
30
- Project-URL: Source, https://github.com/johannes-programming/scaevola
29
+ Project-URL: Source, https://github.com/johannes-programming/scaevola/
31
30
  Project-URL: Website, https://scaevola.johannes-programming.online/
32
31
  Classifier: Development Status :: 5 - Production/Stable
33
32
  Classifier: License :: OSI Approved :: MIT License
33
+ Classifier: Natural Language :: English
34
+ Classifier: Operating System :: OS Independent
34
35
  Classifier: Programming Language :: Python
35
36
  Classifier: Programming Language :: Python :: 3
36
37
  Classifier: Programming Language :: Python :: 3 :: Only
38
+ Classifier: Typing :: Typed
37
39
  Requires-Python: >=3.8
38
40
  Description-Content-Type: text/x-rst
39
41
  License-File: LICENSE.txt
@@ -42,6 +44,4 @@ License-File: LICENSE.txt
42
44
  scaevola
43
45
  ========
44
46
 
45
- Pad nucleotide sequence.
46
- Visit the website for more information:
47
- `https://scaevola.johannes-programming.online <https://scaevola.johannes-programming.online>`_
47
+ Visit the website for more information: `https://scaevola.johannes-programming.online/ <https://scaevola.johannes-programming.online/>`_
@@ -10,4 +10,5 @@ src/scaevola.egg-info/SOURCES.txt
10
10
  src/scaevola.egg-info/dependency_links.txt
11
11
  src/scaevola.egg-info/top_level.txt
12
12
  src/scaevola/tests/__init__.py
13
- src/scaevola/tests/tests_operators.py
13
+ src/scaevola/tests/test_0.py
14
+ src/scaevola/tests/test_op.py
@@ -1,7 +0,0 @@
1
- ========
2
- scaevola
3
- ========
4
-
5
- Pad nucleotide sequence.
6
- Visit the website for more information:
7
- `https://scaevola.johannes-programming.online <https://scaevola.johannes-programming.online>`_
@@ -1,48 +0,0 @@
1
- class Scaevola:
2
- def __ge__(self, other):
3
- return type(self)(other) <= self
4
-
5
- def __gt__(self, other):
6
- return type(self)(other) < self
7
-
8
- def __radd__(self, other):
9
- return type(self)(other) + self
10
-
11
- def __rand__(self, other):
12
- return type(self)(other) & self
13
-
14
- def __rdivmod__(self, other):
15
- return divmod(type(self)(other), self)
16
-
17
- def __rfloordiv__(self, other):
18
- return type(self)(other) // self
19
-
20
- def __rlshift__(self, other):
21
- return type(self)(other) << self
22
-
23
- def __rmatmul__(self, other):
24
- return type(self)(other) @ self
25
-
26
- def __rmod__(self, other):
27
- return type(self)(other) % self
28
-
29
- def __rmul__(self, other):
30
- return type(self)(other) * self
31
-
32
- def __ror__(self, other):
33
- return type(self)(other) | self
34
-
35
- def __rpow__(self, other):
36
- return type(self)(other) ** self
37
-
38
- def __rrshift__(self, other):
39
- return type(self)(other) >> self
40
-
41
- def __rsub__(self, other):
42
- return type(self)(other) - self
43
-
44
- def __rtruediv__(self, other):
45
- return type(self)(other) / self
46
-
47
- def __rxor__(self, other):
48
- return type(self)(other) ^ self
File without changes
File without changes
File without changes