File: ecore_self_test.rb

package info (click to toggle)
ruby-rgen 0.10.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,428 kB
  • sloc: ruby: 11,344; xml: 1,368; yacc: 72; makefile: 10
file content (54 lines) | stat: -rw-r--r-- 2,021 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
$:.unshift File.join(File.dirname(__FILE__),"..","lib")

require 'minitest/autorun'
require 'rgen/ecore/ecore'
require 'rgen/array_extensions'

class ECoreSelfTest < Minitest::Test
  include RGen::ECore
  
  def test_simple
    assert_equal \
      %w(lowerBound ordered unique upperBound many required eType).sort,
      ETypedElement.ecore.eStructuralFeatures.name.sort
      
    assert_equal \
      EClassifier.ecore,
      ETypedElement.ecore.eStructuralFeatures.find{|f| f.name=="eType"}.eType
    assert_equal %w(ENamedElement), ETypedElement.ecore.eSuperTypes.name

    assert_equal \
      EModelElement.ecore,
      EModelElement.ecore.eStructuralFeatures.find{|f| f.name=="eAnnotations"}.eOpposite.eType

    assert_equal \
      %w(eType),
      ETypedElement.ecore.eReferences.name
      
    assert_equal \
      %w(lowerBound ordered unique upperBound many required).sort,
      ETypedElement.ecore.eAttributes.name.sort
      
    assert RGen::ECore.ecore.is_a?(EPackage)
    assert_equal "ECore", RGen::ECore.ecore.name
    assert_equal "RGen", RGen::ECore.ecore.eSuperPackage.name
    assert_equal %w(ECore), RGen.ecore.eSubpackages.name
    assert_equal\
      %w(EObject EModelElement EAnnotation ENamedElement ETypedElement 
        EStructuralFeature EAttribute EClassifier EDataType EEnum EEnumLiteral EFactory
        EOperation EPackage EParameter EReference EStringToStringMapEntry EClass 
        ETypeArgument EGenericType).sort,
      RGen::ECore.ecore.eClassifiers.name.sort
      
    assert_equal "false", EAttribute.ecore.eAllAttributes.
      find{|a|a.name == "derived"}.defaultValueLiteral
    assert_equal false, EAttribute.ecore.eAllAttributes.
      find{|a|a.name == "derived"}.defaultValue

    assert_nil EAttribute.ecore.eAllAttributes.
      find{|a|a.name == "defaultValueLiteral"}.defaultValueLiteral
    assert_nil EAttribute.ecore.eAllAttributes.
      find{|a|a.name == "defaultValueLiteral"}.defaultValue

  end
end