def test_debug_print_001(capsys): """Test printing the content. Test printing content with print. This is a development test which must directly print the snippets with the test case helper method. """ output = ( '1. Remove all docker containers with volumes @docker [54e41e9b52a02b63]', '', ' $ docker rm --volumes $(docker ps --all --quiet)', '', ' # cleanup,container,docker,docker-ce,moby', ' > https://docs.docker.com/engine/reference/commandline/rm/', '', ' ! category : snippet', ' ! created : 2017-10-14T19:56:31.000001+00:00', ' ! description : ', ' ! digest : 54e41e9b52a02b631b5c65a6a053fcbabc77ccd42b02c64fdfbc76efdb18e319 (True)', ' ! filename : ', ' ! id : a1cd5827-b6ef-4067-b5ac-3ceac07dde9f', ' ! name : ', ' ! source : ', ' ! updated : 2017-10-14T19:56:31.000001+00:00', ' ! uuid : 11cd5827-b6ef-4067-b5ac-3ceac07dde9f', ' ! versions : ', '', '2. Remove docker image with force @docker [53908d68425c61dc]', '', ' $ docker rm --force redis', '', ' # cleanup,container,docker,docker-ce,moby', ' > https://docs.docker.com/engine/reference/commandline/rm/', ' > https://www.digitalocean.com/community/tutorials/how-to-remove-docker-images-containers-and-volumes', '', ' ! category : snippet', ' ! created : 2017-10-14T19:56:31.000001+00:00', ' ! description : ', ' ! digest : 53908d68425c61dc310c9ce49d530bd858c5be197990491ca20dbe888e6deac5 (True)', ' ! filename : ', ' ! id : a2cd5827-b6ef-4067-b5ac-3ceac07dde9f', ' ! name : ', ' ! source : ', ' ! updated : 2017-10-14T19:56:31.000001+00:00', ' ! uuid : 12cd5827-b6ef-4067-b5ac-3ceac07dde9f', ' ! versions : ', '', '# collection meta', ' ! total : 2' ) print(Content.output()) # Part of the test. out, err = capsys.readouterr() out = Helper.remove_ansi(out) assert Const.NEWLINE.join(output) in out assert not err
def test_cli_create_solution_001(snippy): """Create solution from CLI. Create new solution by defining all content parameters from command line. Creating solution uses editor by default only if the data field is not defined. In this case editor is not used. """ content = {'data': [Content.deepcopy(Solution.BEATS)]} content['data'][0]['description'] = '' content['data'][0]['filename'] = '' content['data'][0]['uuid'] = Content.UUID1 content['data'][0][ 'digest'] = '509c7e11b568283ae985ff038cbabbe94e9cea8b058215b243ae0463b0497e5c' data = Const.DELIMITER_DATA.join(content['data'][0]['data']) brief = content['data'][0]['brief'] groups = Const.DELIMITER_GROUPS.join(content['data'][0]['groups']) tags = Const.DELIMITER_TAGS.join(content['data'][0]['tags']) links = Const.DELIMITER_LINKS.join(content['data'][0]['links']) cause = snippy.run(['snippy', 'create', '--scat', 'solution', '--content', data, '--brief', brief, '--groups', groups, '--tags', tags, '--links', links, '--format', 'text']) # pylint: disable=line-too-long print(Content.output()) assert cause == Cause.ALL_OK Content.assert_storage(content)