geo_pattern 1.5.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/README.md +46 -5
  4. data/lib/geo_pattern/color_generators/base_color_generator.rb +2 -9
  5. data/lib/geo_pattern/pattern_helpers.rb +22 -7
  6. data/lib/geo_pattern/roles/comparable_metadata.rb +1 -1
  7. data/lib/geo_pattern/roles/named_generator.rb +1 -1
  8. data/lib/geo_pattern/version.rb +1 -1
  9. metadata +55 -85
  10. data/.github/workflows/ruby.yml +0 -30
  11. data/.gitignore +0 -19
  12. data/.rspec +0 -3
  13. data/.simplecov +0 -26
  14. data/Gemfile +0 -24
  15. data/Rakefile +0 -82
  16. data/fixtures/generated_patterns/chevrons.svg +0 -1
  17. data/fixtures/generated_patterns/concentric_circles.svg +0 -1
  18. data/fixtures/generated_patterns/diamonds.svg +0 -1
  19. data/fixtures/generated_patterns/diamonds_with_base_color.svg +0 -1
  20. data/fixtures/generated_patterns/diamonds_with_color.svg +0 -1
  21. data/fixtures/generated_patterns/hexagons.svg +0 -1
  22. data/fixtures/generated_patterns/mosaic_squares.svg +0 -1
  23. data/fixtures/generated_patterns/nested_squares.svg +0 -1
  24. data/fixtures/generated_patterns/octagons.svg +0 -1
  25. data/fixtures/generated_patterns/overlapping_circles.svg +0 -1
  26. data/fixtures/generated_patterns/overlapping_rings.svg +0 -1
  27. data/fixtures/generated_patterns/plaid.svg +0 -1
  28. data/fixtures/generated_patterns/plus_signs.svg +0 -1
  29. data/fixtures/generated_patterns/sine_waves.svg +0 -1
  30. data/fixtures/generated_patterns/squares.svg +0 -1
  31. data/fixtures/generated_patterns/tessellation.svg +0 -1
  32. data/fixtures/generated_patterns/triangles.svg +0 -1
  33. data/fixtures/generated_patterns/xes.svg +0 -1
  34. data/geo_pattern.gemspec +0 -25
  35. data/script/bootstrap +0 -30
  36. data/script/console +0 -9
  37. data/script/test +0 -21
  38. data/spec/background_generators/solid_generator_spec.rb +0 -52
  39. data/spec/background_spec.rb +0 -27
  40. data/spec/color_generators/base_color_generator_spec.rb +0 -33
  41. data/spec/color_generators/simple_generator_spec.rb +0 -14
  42. data/spec/color_preset_spec.rb +0 -55
  43. data/spec/color_spec.rb +0 -17
  44. data/spec/geo_pattern_spec.rb +0 -116
  45. data/spec/helpers_spec.rb +0 -67
  46. data/spec/pattern_preset_spec.rb +0 -43
  47. data/spec/pattern_sieve_spec.rb +0 -68
  48. data/spec/pattern_spec.rb +0 -74
  49. data/spec/pattern_store_spec.rb +0 -49
  50. data/spec/pattern_validator_spec.rb +0 -30
  51. data/spec/seed_spec.rb +0 -16
  52. data/spec/spec_helper.rb +0 -19
  53. data/spec/structure_generators/chevrons_generator_spec.rb +0 -7
  54. data/spec/structure_generators/concentric_circles_generator_spec.rb +0 -7
  55. data/spec/structure_generators/diamonds_generator_spec.rb +0 -7
  56. data/spec/structure_generators/hexagons_generator_spec.rb +0 -7
  57. data/spec/structure_generators/mosaic_squares_generator_spec.rb +0 -7
  58. data/spec/structure_generators/nested_squares_generator_spec.rb +0 -7
  59. data/spec/structure_generators/octagons_generator_spec.rb +0 -7
  60. data/spec/structure_generators/overlapping_circles_generator_spec.rb +0 -7
  61. data/spec/structure_generators/overlapping_rings_generator_spec.rb +0 -7
  62. data/spec/structure_generators/plaid_generator_spec.rb +0 -7
  63. data/spec/structure_generators/plus_signs_generator_spec.rb +0 -7
  64. data/spec/structure_generators/sine_waves_generator_spec.rb +0 -7
  65. data/spec/structure_generators/squares_generator_spec.rb +0 -7
  66. data/spec/structure_generators/tessellation_generator_spec.rb +0 -7
  67. data/spec/structure_generators/triangles_generator_spec.rb +0 -7
  68. data/spec/structure_generators/xes_generator_spec.rb +0 -7
  69. data/spec/structure_spec.rb +0 -40
  70. data/spec/support/aruba.rb +0 -24
  71. data/spec/support/helpers/fixtures.rb +0 -14
  72. data/spec/support/kernel.rb +0 -46
  73. data/spec/support/matchers/image.rb +0 -19
  74. data/spec/support/matchers/name.rb +0 -17
  75. data/spec/support/rspec.rb +0 -26
  76. data/spec/support/shared_examples/generator.rb +0 -48
  77. data/spec/support/shared_examples/pattern.rb +0 -33
  78. data/spec/support/shared_examples/pattern_name.rb +0 -9
  79. data/spec/support/shared_examples/structure.rb +0 -50
  80. data/spec/support/string.rb +0 -3
  81. data/spec/svg_spec.rb +0 -14
@@ -1,33 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.shared_examples "a chosen pattern" do |name|
4
- subject(:pattern) { GeoPattern.generate(input, patterns: name) }
5
-
6
- let(:file_name) { "#{name}.svg" }
7
-
8
- before :each do
9
- write_file file_name, pattern.to_s
10
- end
11
-
12
- it { expect(pattern.structure).to be_name name }
13
- it { expect(file_name).to have_same_file_content_as("%/generated_patterns/#{name}.svg") }
14
- end
15
-
16
- RSpec.shared_examples "an invalid pattern" do |chosen_pattern|
17
- subject(:pattern) { GeoPattern.generate(input, patterns: chosen_pattern) }
18
-
19
- it { expect { subject }.to raise_error InvalidPatternError }
20
- end
21
-
22
- RSpec.shared_examples "an old style pattern" do |chosen_pattern, name|
23
- subject(:pattern) { GeoPattern.generate(input, patterns: chosen_pattern) }
24
-
25
- let(:file_name) { "#{name}.svg" }
26
-
27
- before :each do
28
- write_file file_name, pattern.to_s
29
- end
30
-
31
- it { expect(pattern.structure).to be_name name }
32
- it { expect(file_name).to have_same_file_content_as("%/generated_patterns/#{name}.svg") }
33
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.shared_examples "a known pattern name" do
4
- it { silence(:stderr) { expect(pattern_store[pattern_name]).not_to be_nil } }
5
- end
6
-
7
- RSpec.shared_examples "an unknown pattern name" do
8
- it { silence(:stderr) { expect(pattern_store[pattern_name]).to be_nil } }
9
- end
@@ -1,50 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.shared_examples "a metadata argument" do |argument|
4
- describe "##{argument}" do
5
- it { expect(metadata.public_send(argument)).to eq public_send(argument) }
6
- end
7
-
8
- describe "##{argument}?" do
9
- context "when #{argument} is not defined" do
10
- let(argument) { nil }
11
- it { expect { metadata }.to raise_error ArgumentError, "Argument #{argument} is missing" }
12
- end
13
-
14
- context "when #{argument} is defined" do
15
- context "when argument is not given" do
16
- it { is_expected.to public_send(:"be_#{argument}", nil) }
17
- end
18
-
19
- context "when argument is the same as the defined one" do
20
- it { is_expected.to public_send(:"be_#{argument}", public_send(argument)) }
21
- end
22
-
23
- context "when argument is different from the defined one" do
24
- it { is_expected.not_to public_send(:"be_#{argument}", "blub") }
25
- end
26
- end
27
- end
28
- end
29
-
30
- RSpec.shared_examples "a forwarded metadata argument" do |argument|
31
- describe "##{argument}" do
32
- it { expect(metadata.public_send(argument)).to eq public_send(argument) }
33
- end
34
-
35
- describe "##{argument}?" do
36
- context "when #{argument} is defined" do
37
- context "when argument is not given" do
38
- it { is_expected.to public_send(:"be_#{argument}", nil) }
39
- end
40
-
41
- context "when argument is the same as the defined one" do
42
- it { is_expected.to public_send(:"be_#{argument}", public_send(argument)) }
43
- end
44
-
45
- context "when argument is different from the defined one" do
46
- it { is_expected.not_to public_send(:"be_#{argument}", "blub") }
47
- end
48
- end
49
- end
50
- end
@@ -1,3 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "active_support/core_ext/string/strip"
data/spec/svg_spec.rb DELETED
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "spec_helper"
4
-
5
- RSpec.describe SvgImage do
6
- context "#<=>" do
7
- it "is comparable" do
8
- svg1 = SvgImage.new
9
- svg2 = SvgImage.new
10
-
11
- expect(svg1).to eq svg2
12
- end
13
- end
14
- end