From 227e18ea43eed473e30f9e4ae6e1b150e600f903 Mon Sep 17 00:00:00 2001 From: Grzegorz Bizon Date: Fri, 23 Feb 2018 10:41:10 +0100 Subject: Add support for evaluating pipeline expression variables --- .../gitlab/ci/pipeline/expression/statement_spec.rb | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'spec/lib/gitlab/ci/pipeline') diff --git a/spec/lib/gitlab/ci/pipeline/expression/statement_spec.rb b/spec/lib/gitlab/ci/pipeline/expression/statement_spec.rb index e8a1fc0579e..9a35d71c658 100644 --- a/spec/lib/gitlab/ci/pipeline/expression/statement_spec.rb +++ b/spec/lib/gitlab/ci/pipeline/expression/statement_spec.rb @@ -60,4 +60,24 @@ describe Gitlab::Ci::Pipeline::Expression::Statement do end end end + + describe '#evaluate' do + statements = [ + ['$VARIABLE == "my variable"', true], + ['"my variable" == $VARIABLE', true], + ['$VARIABLE == null', false], + ['$VAR == null', true], + ['null == $VAR', true], + ['$VARIABLE', 'my variable'], + ['$VAR', nil], + ] + + statements.each do |expression, value| + it "evaluates `#{expression}` to `#{value}`" do + statement = described_class.new(expression, pipeline) + + expect(statement.evaluate).to eq value + end + end + end end -- cgit v1.2.1