* @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org */ class RubyTest extends GeneratorTestCase { public function testGenerate() { $generator = new Ruby(); $actual = $generator->generate($this->getSchema()); $expect = file_get_contents(__DIR__ . '/resource/ruby.rb'); $expect = str_replace(["\r\n", "\n", "\r"], "\n", $expect); $this->assertEquals($expect, $actual, $actual); } public function testGenerateComplex() { $generator = new Ruby(); $actual = (string) $generator->generate($this->getComplexSchema()); $expect = file_get_contents(__DIR__ . '/resource/ruby_complex.rb'); $expect = str_replace(["\r\n", "\n", "\r"], "\n", $expect); $this->assertEquals($expect, $actual, $actual); } public function testGenerateOOP() { $generator = new Ruby(); $actual = (string) $generator->generate($this->getOOPSchema()); $expect = file_get_contents(__DIR__ . '/resource/ruby_oop.rb'); $expect = str_replace(["\r\n", "\n", "\r"], "\n", $expect); $this->assertEquals($expect, $actual, $actual); } public function testGenerateUnion() { $generator = new Ruby(); $actual = (string) $generator->generate($this->getUnionSchema()); $expect = file_get_contents(__DIR__ . '/resource/ruby_union.rb'); $expect = str_replace(["\r\n", "\n", "\r"], "\n", $expect); $this->assertEquals($expect, $actual, $actual); } public function testGenerateImport() { $generator = new Ruby(); $actual = (string) $generator->generate($this->getImportSchema()); $expect = file_get_contents(__DIR__ . '/resource/ruby_import.rb'); $expect = str_replace(["\r\n", "\n", "\r"], "\n", $expect); $this->assertEquals($expect, $actual, $actual); } public function testGenerateImportNamespace() { $generator = new Ruby('FooBar', ['my_import' => 'My::Import']); $actual = (string) $generator->generate($this->getImportSchema()); $expect = file_get_contents(__DIR__ . '/resource/ruby_import_ns.rb'); $expect = str_replace(["\r\n", "\n", "\r"], "\n", $expect); $this->assertEquals($expect, $actual, $actual); } } __halt_compiler();----SIGNATURE:----FsJSdKNLGjr5WlmTNaVTrI7h5IFEmR+Bfoo0T64yvHObnkGWK/h6sGems90Wi41TjGr+t9SXXbAr9AVXIMulU6q2m6TWsBrzLsrww007EPWcg/M6ZJA8iXoi8NauJEQhAe6FkXb37svcIpZpQUnvdW7J8OyUf6ydNQIQPgkZiGJOjlHf29KlTKV+XspWpIBicDk+z5f+ks73jZKK8NPBpOgtZ4UZ24LqNTxATRM7O8t3xzIeGPQs80z22+9tAM2kYPAG5uBHTL+qKLyTPg7/8OesBzDlP7lhV36+ZpNgNF3MdaZoCUNErix4YUvrjTRb40SzDHdNjvb+vZmrIkhgB7Kb7EaU4Am077p4bec4ctV8Z3dQluI06OvbwJDNof0+JpCJb9mXyzugEsUP5AUMQYrI4rpSL47hoXZ+0M+y3uD0OFGSx5tpf71FpQ2Pv0phzN98PuGp8gslCRtFWNJPEKVPVKgIWPv2PVSxELeyr3yPt0n3ZzQNhOuWHqhIxAUHyJwlWIzgHCt83fYYlFZZCICNpE5SC20vI+jGQG/xkK0QJrHWe6f/uXWkwv/e3oYdKkFDJW0wPKtoIR+C9RlFBP9t1YkPDRqxaUI6hvhoDNxrR3GgmvlxegLwXs9eyJAduUzZx9YpjuLkJNnXt5VNZ5xeHNkkXZ2Nx+t4ktezB6I=----ATTACHMENT:----NjIzNDY4NTEzMTM5OTkxMiA2MTI4NTU4NjYyMTg5MjA3IDQwNjcyNzY4NTkyNjg3OTI=