def test_parse_doc_configs_no_configs(): with tempdir(): with capture_stdout() as stdout: wrapper = Wrapper() wrapper.create_dexy_dirs() wrapper = Wrapper() wrapper.to_valid() wrapper.to_walked() value = stdout.getvalue() assert "didn't find any document config files" in value
def test_walked(): with tempdir(): with open("dexy.yaml", "w") as f: f.write("foo.txt") with open("foo.txt", "w") as f: f.write("foo") wrapper = Wrapper() wrapper.create_dexy_dirs() wrapper.to_valid() wrapper.to_walked() wrapper.validate_state('walked')
def test_parse_doc_configs_single_empty_config(): with tempdir(): wrapper = Wrapper() wrapper.create_dexy_dirs() with open("dexy.yaml", "w") as f: f.write("foo.txt") with open("foo.txt", "w") as f: f.write("foo") wrapper = Wrapper() wrapper.to_valid() wrapper.to_walked()
def test_init_wrapper_if_dexy_dirs_exist(): with tempdir(): wrapper = Wrapper() wrapper.create_dexy_dirs() with open("hello.txt", "w") as f: f.write("hello") wrapper = Wrapper() wrapper.to_valid() assert wrapper.project_root wrapper.to_walked() assert 'hello.txt' in wrapper.filemap assert 'dexy.log' in os.listdir('.dexy') assert not '.dexy/dexy.log' in wrapper.filemap
def test_config_for_directory(): with wrap() as wrapper: with open("dexy.yaml", "w") as f: f.write(""".abc""") with open("root.abc", "w") as f: f.write("hello") with open("root.def", "w") as f: f.write("hello") os.makedirs("s1") os.makedirs("s2") with open("s1/s1.abc", "w") as f: f.write("hello") with open("s1/s1.def", "w") as f: f.write("hello") with open("s2/s2.abc", "w") as f: f.write("hello") with open("s2/s2.def", "w") as f: f.write("hello") with open(os.path.join('s1', 'dexy.yaml'), 'w') as f: f.write(""".def|dexy""") wrapper = Wrapper() wrapper.to_valid() wrapper.to_walked() wrapper.to_checked() wrapper.run() assert len(wrapper.nodes) == 6 p = wrapper.nodes["pattern:*.abc"] c = wrapper.nodes["doc:s2/s2.abc"] assert c in p.children
def test_nodexy_files(): with tempdir(): wrapper = Wrapper() wrapper.create_dexy_dirs() with open("hello.txt", "w") as f: f.write("hello") os.makedirs("s1/s2/s3") nodexy_path = "s1/s2/.nodexy" with open(nodexy_path, 'w') as f: f.write("dexy stop here") with open("s1/s2/ignore.txt", "w") as f: f.write("dexy should ignore this") with open("s1/s2/s3/ignore.txt", "w") as f: f.write("dexy should also ignore this") # Only the hello.txt file is visible to dexy wrapper = Wrapper() wrapper.to_valid() wrapper.to_walked() assert len(wrapper.filemap) == 1 assert 'hello.txt' in wrapper.filemap os.remove(nodexy_path) # Now we can see all 3 text files. wrapper = Wrapper() wrapper.to_valid() wrapper.to_walked() assert len(wrapper.filemap) == 3 assert 'hello.txt' in wrapper.filemap assert 's1/s2/ignore.txt' in wrapper.filemap assert 's1/s2/s3/ignore.txt' in wrapper.filemap