Compare commits
	
		
			2 Commits
		
	
	
		
			command_he
			...
			mocks
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| ba936796ec | |||
| fdc6403a1b | 
							
								
								
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,3 @@ | |||||||
|  | [submodule "tests/helpers/mocks"] | ||||||
|  | 	path = tests/helpers/mocks | ||||||
|  | 	url = https://github.com/Flamefire/bats-mock.git | ||||||
							
								
								
									
										12
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								Makefile
									
									
									
									
									
								
							| @ -5,8 +5,9 @@ test: | |||||||
| 		-it \ | 		-it \ | ||||||
| 		--rm \ | 		--rm \ | ||||||
| 		-v $$(pwd):/workdir \ | 		-v $$(pwd):/workdir \ | ||||||
|  | 		--privileged \ | ||||||
| 		docker:dind \ | 		docker:dind \ | ||||||
| 		sh -c "apk add bats git bash && cd /workdir && bats /workdir/test.bats" | 		sh -c "apk add bats git bash && cd /workdir && bats tests" | ||||||
|  |  | ||||||
| shellcheck: | shellcheck: | ||||||
| 	@docker run \ | 	@docker run \ | ||||||
| @ -25,12 +26,15 @@ docopt: | |||||||
| 	.venv/bin/docopt.sh abra | 	.venv/bin/docopt.sh abra | ||||||
|  |  | ||||||
| kcov: | kcov: | ||||||
| 	@docker run \ | 	@DOCKER_CONTEXT=default docker run \ | ||||||
| 		-it \ | 		-it \ | ||||||
| 		--rm \ | 		--rm \ | ||||||
| 		-v $$(pwd):/workdir \ | 		-v $$(pwd):/workdir \ | ||||||
| 		kcov/kcov:latest \ | 		koinotice/dind-kcov-bats \ | ||||||
| 		sh -c "kcov /workdir/coverage /workdir/abra || true" | 		bash -c "kcov coverage bats tests || true" | ||||||
|  |  | ||||||
|  | install: | ||||||
|  | 	install abra /usr/bin/abra | ||||||
|  |  | ||||||
| codecov: SHELL:=/bin/bash | codecov: SHELL:=/bin/bash | ||||||
| codecov: | codecov: | ||||||
|  | |||||||
| @ -1,37 +1,48 @@ | |||||||
| #!/usr/bin/env bats | #!/usr/bin/env bats | ||||||
|  |  | ||||||
|  | load test_helper | ||||||
|  |  | ||||||
| setup() { | setup() { | ||||||
|     mkdir -p ~/.abra/servers/default |     export ABRA_DIR=$(mktemp -d) | ||||||
|  |     export DOCKER_STUB_DEBUG=foo | ||||||
|  |     mkdir -p $ABRA_DIR/servers/default | ||||||
|  |     stub docker \ | ||||||
|  |         "context create * --docker * : touch $ABRA_DIR/context" \ | ||||||
|  |         'context ls : echo "swarm.test.com"' \ | ||||||
|  |         "context rm * : rm $ABRA_DIR/context" \ | ||||||
|  |         "context create * --docker * : touch $ABRA_DIR/context" \ | ||||||
|  |         "context rm * : rm $ABRA_DIR/context" | ||||||
| } | } | ||||||
|  |  | ||||||
| teardown() { | teardown() { | ||||||
|     rm -rf ~/.abra/servers/default |     #unstub docker | ||||||
|     rm -rf ~/.abra/servers/swarm.test.com |     #rm -rf "$ABRA_DIR" | ||||||
|  |     echo "foo" | ||||||
| } | } | ||||||
|  |  | ||||||
| @test "abra server add/rm works" { | @test "abra server add/rm works" { | ||||||
|     ./abra server add swarm.test.com |     ./abra server add swarm.test.com | ||||||
|     docker context ls | grep swarm.test.com |     docker context ls | grep swarm.test.com | ||||||
|     [ -d ~/.abra/servers/swarm.test.com ] |     [ -d $ABRA_DIR/servers/swarm.test.com ] | ||||||
|     ./abra server rm swarm.test.com |     ./abra server rm swarm.test.com | ||||||
|  |  | ||||||
|     ./abra server add swarm.test.com foobar 12345 |     ./abra server add swarm.test.com foobar 12345 | ||||||
|     [ -d ~/.abra/servers/swarm.test.com ] |     [ -d $ABRA_DIR/servers/swarm.test.com ] | ||||||
|     ./abra server rm swarm.test.com |     ./abra server rm swarm.test.com | ||||||
| } | } | ||||||
|  |  | ||||||
| @test "abra app new/rm works" { | @test "abra app new/rm works" { | ||||||
|     ./abra app new --server default --domain traefik.test.com traefik |     ./abra app new --server default --domain traefik.test.com traefik | ||||||
|     [ -f ~/.abra/servers/default/traefik.test.com.env ] |     [ -f $ABRA_DIR/servers/default/traefik.test.com.env ] | ||||||
|  |  | ||||||
|     # interactive prompt |     # interactive prompt | ||||||
|     echo "y" | ./abra app traefik.test.com delete |     echo "y" | ./abra app traefik.test.com delete | ||||||
|     [ ! -f ~/.abra/servers/default/traefik.test.com.env ] |     [ ! -f $ABRA_DIR/servers/default/traefik.test.com.env ] | ||||||
|  |  | ||||||
|     # --force |     # --force | ||||||
|     ./abra app new --server default --domain traefik.test.com traefik |     ./abra app new --server default --domain traefik.test.com traefik | ||||||
|     ./abra app traefik.test.com delete --force |     ./abra app traefik.test.com delete --force | ||||||
|     [ ! -f ~/.abra/servers/default/traefik.test.com.env ] |     [ ! -f $ABRA_DIR/servers/default/traefik.test.com.env ] | ||||||
| } | } | ||||||
|  |  | ||||||
| @test "abra app <domain> secret (insert|generate|rm)" { | @test "abra app <domain> secret (insert|generate|rm)" { | ||||||
|  | |||||||
							
								
								
									
										1
									
								
								tests/test_helper.bash
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								tests/test_helper.bash
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | load helpers/mocks/src/stub | ||||||
		Reference in New Issue
	
	Block a user
	