koara 0.14.0 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cc3740a66092afcdca69ca8e1ab7fbeec672f173
4
- data.tar.gz: f31b7b0609a6f3c61624f6867d841f78d5e8f5b6
3
+ metadata.gz: 1eda3e058819a93a8e25eec083a6317dc98a9f2f
4
+ data.tar.gz: 5ceb0cc340e176c7490185d589b47d6327aa8cfb
5
5
  SHA512:
6
- metadata.gz: 1308736ba99a01114f387abe022e75a025cbd81982406034c8fac28d76e02bf7ad7fa82271ecf949e95f93dc13e97e42c42daf68c1185e1f1074174b5bcfbd7f
7
- data.tar.gz: 5982de70647333d8fe63a4d052bcb88366e57f9a6cf32032d77e71b535101aa87b713d3175dd21616a98d2872111e2f4f70da3f317143d07a9ab78a2aab70ec7
6
+ metadata.gz: ef3933b6b1a76fa854a3bc23abeb797fd1a8cf5666c619b684141350b119918f347b280eda85dca0722b147c7759e2efefcaf55708b8be2de81b38abb293af8e
7
+ data.tar.gz: 8e9863716d11d758c68922eb479de647531bc8161704c49be10f50aceb36dbc4ecc759c7fe91fe9e5a93238d967fb502e69ea1b4a49c64def24941c3f81c0844
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Koara](http://www.koara.io/logo.png)](http://www.koara.io)
1
+ [![Koara](http://www.codeaddslife.com/koara.png)](http://www.codeaddslife.com/koara)
2
2
 
3
3
  [![Build Status](https://img.shields.io/travis/koara/koara-rb.svg)](https://travis-ci.org/koara/koara-rb)
4
4
  [![Coverage Status](https://img.shields.io/coveralls/koara/koara-rb.svg)](https://coveralls.io/github/koara/koara-rb?branch=master)
@@ -6,7 +6,7 @@
6
6
  [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/koara/koara-rb/blob/master/LICENSE)
7
7
 
8
8
  # Koara-rb
9
- [Koara](http://www.koara.io) is a modular lightweight markup language. This project is the core koara parser written in Ruby.
9
+ [Koara](http://www.codeaddslife.com/koara) is a modular lightweight markup language. This project is the core koara parser written in Ruby.
10
10
  If you are interested in converting koara to a specific outputFormat, please look the [Related Projects](#related-projects) section.
11
11
 
12
12
  ## Getting started
@@ -15,7 +15,7 @@ module Koara
15
15
  buffer[offset + i] = c
16
16
  characters_read += 1
17
17
  @index += c.bytesize
18
- return characters_read if characters_read >= length
18
+ return characters_read if characters_read >= length
19
19
  }
20
20
  return characters_read
21
21
 
data/lib/koara/parser.rb CHANGED
@@ -37,6 +37,8 @@ module Koara
37
37
  end
38
38
 
39
39
  def parse_file(file)
40
+
41
+
40
42
  if File.basename(file).downcase.reverse[0, 3].reverse.to_s != '.kd'
41
43
  raise(ArgumentError, "Can only parse files with extension .kd")
42
44
  end
data/lib/koara/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module Koara
2
2
  # Koara version number.
3
- VERSION = '0.14.0'
3
+ VERSION = '0.15.0'
4
4
  end
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
  require 'test_helper'
3
3
 
4
- class CharStreamTest < MiniTest::Unit::TestCase
4
+ class CharStreamTest < Minitest::Test
5
5
  def test_begin_token
6
6
  cs = Koara::CharStream.new(Koara::Io::StringReader.new('abcd'))
7
7
  assert_equal('a', cs.begin_token)
@@ -3,7 +3,7 @@ require 'test_helper'
3
3
  require 'html5renderer'
4
4
  require 'pathname'
5
5
 
6
- class ComplianceTest < MiniTest::Unit::TestCase
6
+ class ComplianceTest < Minitest::Test
7
7
 
8
8
  TEST_DIR = 'testsuite'
9
9
 
@@ -2,12 +2,13 @@
2
2
  require 'test_helper'
3
3
  require_relative 'html5renderer'
4
4
 
5
- class EndToEndTest < MiniTest::Unit::TestCase
5
+ class EndToEndTest < Minitest::Test
6
6
 
7
7
  TEST_DIR = 'testsuite'
8
8
 
9
9
  def setup
10
10
  @parser = Koara::Parser.new
11
+ @kd = File.read("#{TEST_DIR}/input/end2end.kd")
11
12
  end
12
13
 
13
14
  def test_000001
@@ -1031,14 +1032,12 @@ class EndToEndTest < MiniTest::Unit::TestCase
1031
1032
  end
1032
1033
 
1033
1034
  def assert_output(file, modules)
1034
- kd = File.read("#{TEST_DIR}/input/end2end.kd")
1035
1035
  html = File.read("#{TEST_DIR}/output/html5/end2end/#{file}.htm")
1036
1036
 
1037
1037
  parser = Koara::Parser.new
1038
1038
 
1039
1039
  parser.modules = modules
1040
-
1041
- document = parser.parse_file(File.new("#{TEST_DIR}/input/end2end.kd"))
1040
+ document = parser.parse(@kd)
1042
1041
  renderer = Html5Renderer.new
1043
1042
  document.accept(renderer)
1044
1043
 
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
  require 'test_helper'
3
3
 
4
- class FileReaderTest < MiniTest::Unit::TestCase
4
+ class FileReaderTest < Minitest::Test
5
5
  def setup
6
6
  @buffer = Array.new
7
7
  end
@@ -28,8 +28,8 @@ class FileReaderTest < MiniTest::Unit::TestCase
28
28
  def test_read_with_offset_part_of_string
29
29
  @reader = Koara::Io::FileReader.new('test/filereader.kd')
30
30
  assert_equal(4, @reader.read(@buffer, 2, 4))
31
- assert_equal(nil, @buffer[0])
32
- assert_equal(nil, @buffer[1])
31
+ assert_nil(@buffer[0])
32
+ assert_nil(@buffer[1])
33
33
  assert_equal('a', @buffer[2])
34
34
  assert_equal('b', @buffer[3])
35
35
  end
@@ -37,10 +37,10 @@ class FileReaderTest < MiniTest::Unit::TestCase
37
37
  def test_read_with_offset_too_large_part_of_string
38
38
  @reader = Koara::Io::FileReader.new('test/filereader.kd')
39
39
  assert_equal(4, @reader.read(@buffer, 6, 4))
40
- assert_equal(nil, @buffer[0])
41
- assert_equal(nil, @buffer[1])
42
- assert_equal(nil, @buffer[2])
43
- assert_equal(nil, @buffer[3])
40
+ assert_nil(@buffer[0])
41
+ assert_nil(@buffer[1])
42
+ assert_nil(@buffer[2])
43
+ assert_nil(@buffer[3])
44
44
  end
45
45
 
46
46
  def test_read_until_eof
@@ -75,8 +75,8 @@ class FileReaderTest < MiniTest::Unit::TestCase
75
75
  def test_read_with_unicode_and_offset_part_of_string
76
76
  @reader = Koara::Io::FileReader.new('test/filereader-unicode.kd')
77
77
  assert_equal(4, @reader.read(@buffer, 2, 4))
78
- assert_equal(nil, @buffer[0])
79
- assert_equal(nil, @buffer[1])
78
+ assert_nil(@buffer[0])
79
+ assert_nil(@buffer[1])
80
80
  assert_equal('ð', @buffer[2])
81
81
  assert_equal('i', @buffer[3])
82
82
  end
@@ -84,10 +84,10 @@ class FileReaderTest < MiniTest::Unit::TestCase
84
84
  def test_read_with_unicode_and_offset_too_large_part_of_string
85
85
  @reader = Koara::Io::FileReader.new('test/filereader-unicode.kd')
86
86
  assert_equal(4, @reader.read(@buffer, 6, 4))
87
- assert_equal(nil, @buffer[0])
88
- assert_equal(nil, @buffer[1])
89
- assert_equal(nil, @buffer[2])
90
- assert_equal(nil, @buffer[3])
87
+ assert_nil(@buffer[0])
88
+ assert_nil(@buffer[1])
89
+ assert_nil(@buffer[2])
90
+ assert_nil(@buffer[3])
91
91
  end
92
92
 
93
93
  def test_read_with_unicode_until_eof
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
  require 'test_helper'
3
3
 
4
- class StringReaderTest < MiniTest::Unit::TestCase
4
+ class StringReaderTest < Minitest::Test
5
5
  def setup
6
6
  @buffer = Array.new
7
7
  end
@@ -28,8 +28,8 @@ class StringReaderTest < MiniTest::Unit::TestCase
28
28
  def test_read_with_offset_part_of_string
29
29
  @reader = Koara::Io::StringReader.new('abcd')
30
30
  assert_equal(4, @reader.read(@buffer, 2, 4))
31
- assert_equal(nil, @buffer[0])
32
- assert_equal(nil, @buffer[1])
31
+ assert_nil(@buffer[0])
32
+ assert_nil(@buffer[1])
33
33
  assert_equal('a', @buffer[2])
34
34
  assert_equal('b', @buffer[3])
35
35
  end
@@ -37,10 +37,10 @@ class StringReaderTest < MiniTest::Unit::TestCase
37
37
  def test_read_with_offset_too_large_part_of_string
38
38
  @reader = Koara::Io::StringReader.new('abcd')
39
39
  assert_equal(4, @reader.read(@buffer, 6, 4))
40
- assert_equal(nil, @buffer[0])
41
- assert_equal(nil, @buffer[1])
42
- assert_equal(nil, @buffer[2])
43
- assert_equal(nil, @buffer[3])
40
+ assert_nil(@buffer[0])
41
+ assert_nil(@buffer[1])
42
+ assert_nil(@buffer[2])
43
+ assert_nil(@buffer[3])
44
44
  end
45
45
 
46
46
  def test_read_until_eof
@@ -75,8 +75,8 @@ class StringReaderTest < MiniTest::Unit::TestCase
75
75
  def test_Read_with_unicode_and_offset_part_of_string
76
76
  @reader = Koara::Io::StringReader.new('ðinæ')
77
77
  assert_equal(4, @reader.read(@buffer, 2, 4))
78
- assert_equal(nil, @buffer[0])
79
- assert_equal(nil, @buffer[1])
78
+ assert_nil(@buffer[0])
79
+ assert_nil(@buffer[1])
80
80
  assert_equal('ð', @buffer[2])
81
81
  assert_equal('i', @buffer[3])
82
82
  end
@@ -84,10 +84,10 @@ class StringReaderTest < MiniTest::Unit::TestCase
84
84
  def test_read_with_unicode_and_offset_too_large_part_of_string
85
85
  @reader = Koara::Io::StringReader.new('ðinæ')
86
86
  assert_equal(4, @reader.read(@buffer, 6, 4))
87
- assert_equal(nil, @buffer[0])
88
- assert_equal(nil, @buffer[1])
89
- assert_equal(nil, @buffer[2])
90
- assert_equal(nil, @buffer[3])
87
+ assert_nil(@buffer[0])
88
+ assert_nil(@buffer[1])
89
+ assert_nil(@buffer[2])
90
+ assert_nil(@buffer[3])
91
91
  end
92
92
 
93
93
  def test_read_with_unicode_until_eof
@@ -1,8 +1,7 @@
1
1
  # encoding: utf-8
2
2
  require 'test_helper'
3
3
 
4
- class TokenManagerTest < MiniTest::Unit::TestCase
5
-
4
+ class TokenManagerTest < Minitest::Test
6
5
 
7
6
  def test_eof
8
7
  token = Koara::TokenManager.new(Koara::CharStream.new(Koara::Io::StringReader.new('')))::get_next_token
@@ -68,6 +67,12 @@ class TokenManagerTest < MiniTest::Unit::TestCase
68
67
  assert_equal(Koara::TokenManager::EOL, token.kind)
69
68
  assert_equal("\n", token.image)
70
69
  end
70
+
71
+ def test_eol_with_spaces
72
+ token = Koara::TokenManager.new(Koara::CharStream.new(Koara::Io::StringReader.new(" \n"))).get_next_token
73
+ assert_equal(Koara::TokenManager::EOL, token.kind)
74
+ assert_equal(" \n", token.image)
75
+ end
71
76
 
72
77
  def test_eq
73
78
  token = Koara::TokenManager.new(Koara::CharStream.new(Koara::Io::StringReader.new('='))).get_next_token
@@ -141,17 +146,18 @@ class TokenManagerTest < MiniTest::Unit::TestCase
141
146
  assert_equal('_', token.image)
142
147
  end
143
148
 
144
- def test_space_after_char_sequence
145
- tm = Koara::TokenManager.new(Koara::CharStream.new(Koara::Io::StringReader.new('a ')))
146
- assert_equal('a', tm.get_next_token.image)
147
- assert_equal(' ', tm.get_next_token.image)
148
- end
149
-
150
- def test_two_distinct_char_sequences
151
- tm = Koara::TokenManager.new(Koara::CharStream.new(Koara::Io::StringReader.new('ði ı')))
152
- assert_equal('ði', tm.get_next_token.image)
153
- assert_equal(' ', tm.get_next_token.image)
154
- assert_equal('ı', tm.get_next_token.image)
149
+ def test_linebreak
150
+ tm = Koara::TokenManager.new(Koara::CharStream.new(Koara::Io::StringReader.new("a\nb")))
151
+ token = tm.get_next_token
152
+ assert_equal(Koara::TokenManager::CHAR_SEQUENCE, token.kind)
153
+ assert_equal('a', token.image)
154
+ token = tm.get_next_token
155
+ assert_equal(Koara::TokenManager::EOL, token.kind)
156
+ assert_equal("\n", token.image)
157
+ token = tm.get_next_token
158
+ assert_equal(Koara::TokenManager::CHAR_SEQUENCE, token.kind)
155
159
  end
160
+
161
+
156
162
 
157
163
  end
metadata CHANGED
@@ -1,27 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: koara
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andy Van Den Heuvel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-26 00:00:00.000000000 Z
11
+ date: 2017-07-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.0'
27
27
  description: Koara parser written in Ruby
@@ -79,17 +79,17 @@ require_paths:
79
79
  - lib
80
80
  required_ruby_version: !ruby/object:Gem::Requirement
81
81
  requirements:
82
- - - '>='
82
+ - - ">="
83
83
  - !ruby/object:Gem::Version
84
84
  version: 1.9.3
85
85
  required_rubygems_version: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '>='
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: 1.3.5
90
90
  requirements: []
91
91
  rubyforge_project:
92
- rubygems_version: 2.6.4
92
+ rubygems_version: 2.6.12
93
93
  signing_key:
94
94
  specification_version: 4
95
95
  summary: Koara parser written in Ruby