Skip to content

Commit

Permalink
[feat] Make some methods & variables public for more manual configura…
Browse files Browse the repository at this point in the history
…tion
  • Loading branch information
jshwi committed Feb 1, 2020
1 parent 1e408d3 commit b9d8669
Show file tree
Hide file tree
Showing 8 changed files with 377 additions and 254 deletions.
95 changes: 68 additions & 27 deletions conftest.py
@@ -1,56 +1,58 @@
#!/usr/bin/env python3
from typing import List

from pytest import fixture

from object_colors import Color


@fixture
def color():
def color() -> Color:
populated = Color()
populated.populate_colors()
return populated


@fixture
def color_str(color, str_):
def color_str(color: Color, str_: str) -> Color:
return color.green.get(str_)


@fixture
def str_():
def str_() -> str:
return "Cc: My Business <me@mybusiness.com>;"


@fixture
def marked(red, reset):
def marked(red: str, reset: str) -> str:
return f"{red}Cc:{reset} My Business <me@mybusiness.com>;"


@fixture
def marked_color(green, red, reset):
def marked_color(green: str, red: str, reset: str) -> str:
return f"{green}{red}Cc:{green} My Business <me@mybusiness.com>;{reset}"


@fixture
def marked_second(red, reset):
def marked_second(red: str, reset: str) -> str:
return f"Cc: {red}My{reset} Business <me@mybusiness.com>;"


@fixture
def marked_second_color(green, red, reset):
def marked_second_color(green: str, red: str, reset: str) -> str:
return f"{green}Cc: {red}My{green} Business <me@mybusiness.com>;{reset}"


@fixture
def all_cs(red, reset):
def all_cs(red: str, reset: str) -> str:
return (
f"{red}C{reset}{red}c{reset}{red}:{reset} My "
f"Business <me@mybusiness.{red}c{reset}om>;"
)


@fixture
def dupe_marked_color(green, red, reset):
def dupe_marked_color(green: str, red: str, reset: str) -> str:
"""do dupe fixture but with ignore"""
return (
f"{green}This is a string that says {red}one{green} several times. "
Expand All @@ -61,7 +63,7 @@ def dupe_marked_color(green, red, reset):


@fixture
def dupe_marked(green, red, reset):
def dupe_marked(green: str, red: str, reset: str) -> str:
"""do dupe fixture but with ignore"""
return (
f"This is a string that says {red}one{reset} several times. It says "
Expand All @@ -72,47 +74,47 @@ def dupe_marked(green, red, reset):


@fixture
def all_cs_color(red, green, reset):
def all_cs_color(red: str, green: str, reset: str) -> str:
return (
f"{green}{red}C{green}{red}c{green}{red}:{green} My "
f"Business <me@mybusiness.{red}c{green}om>;{reset}"
)


@fixture
def all_cs_no_caps(red, reset):
def all_cs_no_caps(red: str, reset: str) -> str:
return (
f"C{red}c{reset}{red}:{reset} My "
f"Business <me@mybusiness.{red}c{reset}om>;"
)


@fixture
def all_cs_no_caps_color(red, green, reset):
def all_cs_no_caps_color(red: str, green: str, reset: str) -> str:
return (
f"{green}C{red}c{green}{red}:{green} My "
f"Business <me@mybusiness.{red}c{green}om>;{reset}"
)


@fixture
def exact_idx(red, reset):
def exact_idx(red: str, reset: str) -> str:
return (
f"{red}C{reset}{red}c{reset}: My Business "
f"<me@mybusiness.{red}c{reset}om>;"
)


@fixture
def exact_idx_color(green, red, reset):
def exact_idx_color(green: str, red: str, reset: str) -> str:
return (
f"{green}{red}C{green}{red}c{green}: My Business "
f"<me@mybusiness.{red}c{green}om>;{reset}"
)


@fixture
def dupes():
def dupes() -> str:
return (
"This is a string that says one several times. It says one in this "
"sentence. And one in this sentence. This sentence also has one in "
Expand All @@ -121,7 +123,7 @@ def dupes():


@fixture
def colored_dupes():
def colored_dupes() -> str:
return (
"\u001b[0;32;40mThis is a string that says one several times. It says "
"one in this sentence. And one in this sentence. This sentence also "
Expand All @@ -130,62 +132,101 @@ def colored_dupes():


@fixture
def scatter_cs(green, red, reset):
def scatter_cs(green: str, red: str, reset: str) -> str:
return (
f"{red}C{reset}{red}c{reset}{red}:{reset} My Business "
f"<me@mybusiness.{red}c{reset}om>;"
)


@fixture
def scatter_cs_color(green, red, reset):
def scatter_cs_color(green: str, red: str, reset: str) -> str:
return (
f"{green}{red}C{green}{red}c{green}{red}:{green} My Business "
f"<me@mybusiness.{red}c{green}om>;{reset}"
)


@fixture
def scatter_cs_exact(green, red, reset):
def scatter_cs_exact(green: str, red: str, reset: str) -> str:
return f"C{red}c{reset}: My Business <me@mybusiness.{red}c" f"{reset}om>;"


@fixture
def scatter_cs_exact_color(green, red, reset):
def scatter_cs_exact_color(green: str, red: str, reset: str) -> str:
return (
f"{green}C{red}c{green}: My Business "
f"<me@mybusiness.{red}c{green}om>;{reset}"
)


@fixture
def spaced_words(green, red, reset):
def spaced_words(green: str, red: str, reset: str) -> str:
return f"{red}Cc:{reset} My {red}Business{reset} <me@mybusiness.com>;"


@fixture
def spaced_words_color(green, red, reset):
def spaced_words_color(green: str, red: str, reset: str) -> str:
return (
f"{green}{red}Cc:{green} My {red}Business{green} "
f"<me@mybusiness.com>;{reset}"
)


@fixture
def green():
def green() -> str:
return "\u001b[0;32;40m"


@fixture
def red():
def red() -> str:
return "\u001b[0;31;40m"


@fixture
def reset():
def reset() -> str:
return "\u001b[0;0m"


@fixture
def color_keys(color, str_):
def color_keys(color: Color, str_: str) -> str:
return color.red.get_key(str_, "c", ignore_case=True, scatter=True)


@fixture
def attrs() -> List[str]:
return [
"get",
"set",
"get",
"get_key",
"print",
"print_key",
"pop",
"multicolor",
"populate_colors"
]


@fixture
def colors():
return [
"black",
"red",
"green",
"yellow",
"blue",
"purple",
"cyan",
"white",
]


@fixture
def instances(colors) -> List[str]:
return ["text", "effect", "background", "bold"] + colors


@fixture
def for_multiple_colors():
return "Testing for multiple colors"

0 comments on commit b9d8669

Please sign in to comment.