Ignore:
Timestamp:
May 22, 2019, 10:03:37 PM (5 years ago)
Author:
coas-nagasima
Message:

ビルドが通るよう更新

File:
1 edited

Legend:

Unmodified
Added
Removed
  • azure_iot_hub/trunk/asp3_dcre/utils/gentest.rb

    • Property svn:mime-type changed from text/x-ruby to text/x-ruby;charset=UTF-8
    r388 r389  
    88#              Graduate School of Information Science, Nagoya Univ., JAPAN
    99#
    10 #  上記著作権è€
    11 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    12 #  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
    13 #  変・再é
    14 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    15 #  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    16 #      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
    17 #      スコード中に含まれていること.
    18 #  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    19 #      用できる形で再é
    20 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    21 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    22 #      è€
    23 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    24 #      の無保証規定を掲載すること.
    25 #  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    26 #      用できない形で再é
    27 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    28 #      と.
    29 #    (a) 再é
    30 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    31 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    32 #        作権表示,この利用条件および下記の無保証規定を掲載すること.
    33 #    (b) 再é
    34 å¸ƒã®å½¢æ
    35 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    36 #        報告すること.
    37 #  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    38 #      害からも,上記著作権è€
    39 ãŠã‚ˆã³TOPPERSプロジェクトをå
    40 è²¬ã™ã‚‹ã“と.
    41 #      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
    42 #      由に基づく請求からも,上記著作権è€
    43 ãŠã‚ˆã³TOPPERSプロジェクトを
    44 #      å
    45 è²¬ã™ã‚‹ã“と.
     10#  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     11#  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     12#  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     13#  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     14#      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     15#      スコード中に含まれていること.
     16#  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     17#      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     18#      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     19#      の無保証規定を掲載すること.
     20#  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     21#      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     22#      と.
     23#    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     24#        作権表示,この利用条件および下記の無保証規定を掲載すること.
     25#    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     26#        報告すること.
     27#  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     28#      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     29#      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     30#      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     31#      免責すること.
    4632#
    47 #  本ソフトウェアは,無保証で提供されているものである.上記著作権è€
    48 ãŠ
    49 #  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    50 #  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
    51 #  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    52 #  の責任を負わない.
     33#  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     34#  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     35#  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     36#  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     37#  の責任を負わない.
    5338#
    5439#  $Id$
     
    5641
    5742#
    58 #               ãƒ†ã‚¹ãƒˆãƒ—ログラム生成ツール
     43#               テストプログラム生成ツール
    5944#
    6045       
    6146#
    62 ç”Ÿæˆå‹•ä½œã‚’決めるための設定
     47生成動作を決めるための設定
    6348#
    6449$parameterDefinition = {
     
    117102
    118103#
    119 å‡¦ç†å˜ä½ã®ã‚³ãƒ¼ãƒ‰ã‚’格納するクラス
     104処理単位のコードを格納するクラス
    120105#
    121106class PUCode
    122   # 初期化
     107  # 初期化
    123108  def initialize(puName)
    124     @puName = puName                                            # 処理単位の名前
    125     @currentCount = ""                                          # 処理カウント
    126     @countFlag = false                                          # 処理カウントが使われたか
    127     @code = Hash.new { |h,k| h[k] = [] }        # 処理単位のコード
    128     @variableList = {}                                          # 処理単位の変数
    129     @silFlag = false                                            # SILが使われたか
    130 
    131     # 処理カウント変数名の生成
     109    @puName = puName                                            # 処理単位の名前
     110    @currentCount = ""                                          # 処理カウント
     111    @countFlag = false                                          # 処理カウントが使われたか
     112    @code = Hash.new { |h,k| h[k] = [] }        # 処理単位のコード
     113    @variableList = {}                                          # 処理単位の変数
     114    @silFlag = false                                            # SILが使われたか
     115
     116    # 処理カウント変数名の生成
    132117    case puName
    133118    when /^TASK([0-9]*)$/
     
    152137  end
    153138
    154   # 処理カウントの設定
     139  # 処理カウントの設定
    155140  def setCount(count)
    156141    @countFlag = true if count != ""
     
    158143  end
    159144
    160   # 処理カウントのインクリメント
     145  # 処理カウントのインクリメント
    161146  def incrementCount
    162147    if @currentCount != ""
     
    165150  end
    166151
    167   # コードの追加
     152  # コードの追加
    168153  def append(*lines)
    169154    lines.each do |line|
     
    172157  end
    173158
    174   # 変数の追加
     159  # 変数の追加
    175160  def addVariable(varName, typeName)
    176161    @variableList[varName] = typeName
    177162  end
    178163
    179   # SILの使用
     164  # SILの使用
    180165  def useSil
    181166    @silFlag = true
    182167  end
    183168
    184   # 処理単位のコードの出力
     169  # 処理単位のコードの出力
    185170  def generateCode
    186     # 不要な処理単位の判定
     171    # 不要な処理単位の判定
    187172    return if @code.length == 0
    188173
    189     # 処理カウント変数の生成
     174    # 処理カウント変数の生成
    190175    if @countFlag
    191176      print("\nstatic uint_t\t#{@count_var} = 0;\n")
    192177    end
    193178
    194     # 関数ヘッダの生成
     179    # 関数ヘッダの生成
    195180    case @puName
    196181    when /^TASK([0-9]*)$/
     
    282267
    283268#
    284 ã‚µãƒ¼ãƒ“スコール呼び出しの読み込み
     269サービスコール呼び出しの読み込み
    285270#
    286271def genServiceCall(pu, svc_call, error_code)
     
    303288
    304289  if !error_code
    305     # E_OKが返る場合
     290    # E_OKが返る場合
    306291    pu.append("\tcheck_ercd(ercd, E_OK);", "")
    307292  elsif error_code == "noreturn"
    308     # リターンしない場合
     293    # リターンしない場合
    309294    pu.append("")
    310295  else
     
    314299
    315300#
    316 ãƒ†ã‚¹ãƒˆé–‹å§‹ã‚³ãƒ¼ãƒ‰ã®ç”Ÿæˆ
     301テスト開始コードの生成
    317302#
    318303def testStartCode(pu)
    319   # テスト開始コードは一度のみ出力する
     304  # テスト開始コードは一度のみ出力する
    320305  if $startFlag == 0
    321306    pu.append("\ttest_start(__FILE__);", "")
     
    325310
    326311#
    327 ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨é–¢æ•°ã®æŒ¯ã‚‹èˆžã„の読み込み
     312ターゲット依存部関数の振る舞いの読み込み
    328313#
    329314def targetFunction(line, checkNum)
     
    332317    line = $2
    333318    if (pu = $puList[functionName]).nil?
    334       # 新しい処理単位の生成
     319      # 新しい処理単位の生成
    335320      pu = $puList[functionName] = PUCode.new(functionName)
    336321      pu.setCount("1")
     
    362347
    363348#
    364 ãƒ†ã‚¹ãƒˆã‚¹ã‚¯ãƒªãƒ—トの読み込み
     349テストスクリプトの読み込み
    365350#
    366351def parseLine(line)
    367352  if /^==\s*(([a-zA-Z_]+)[0-9]*)(.*)$/ =~ line
    368     # 処理単位の開始
     353    # 処理単位の開始
    369354    $procFlag = 1
    370355    puName = $1
    371356    line2 = $3
    372357    if (pu = $puList[puName]).nil?
    373       # 新しい処理単位の生成
     358      # 新しい処理単位の生成
    374359      pu = $puList[puName] = PUCode.new(puName)
    375360    end
     
    388373    pu = $currentPu
    389374    if /^([0-9]+\:)\s*(.*)$/ =~ line
    390       # チェックポイント番号の処理
     375      # チェックポイント番号の処理
    391376      originalCheckNum = $1
    392377      line = $2
     
    433418
    434419#
    435 ã‚¨ãƒ©ãƒ¼ãƒã‚§ãƒƒã‚¯
     420エラーチェック
    436421#
    437422if ARGV.length < 1
     
    440425
    441426#
    442 åˆæœŸåŒ–
     427初期化
    443428#
    444429inFileName = ARGV.shift
    445430
    446431#
    447 ã‚¹ã‚¯ãƒªãƒ—トファイル読み込み処理
    448 #
    449 $lastCheckPoint = 0             # 最後のチェックポイント番号
    450 $procFlag = 0                           # スクリプト処理中フラグ
    451 $startFlag = 0                  # テスト開始コードの出力フラグ
    452 $currentPu = nil                        # 読み込み中の処理単位
    453 $puList = {}                            # 処理単位のリスト
     432スクリプトファイル読み込み処理
     433#
     434$lastCheckPoint = 0             # 最後のチェックポイント番号
     435$procFlag = 0                           # スクリプト処理中フラグ
     436$startFlag = 0                  # テスト開始コードの出力フラグ
     437$currentPu = nil                        # 読み込み中の処理単位
     438$puList = {}                            # 処理単位のリスト
    454439
    455440begin
     
    481466
    482467#
    483 ãƒ†ã‚¹ãƒˆãƒ—ログラム出力処理
     468テストプログラム出力処理
    484469#
    485470$puList.keys.sort.each do |puName|
Note: See TracChangeset for help on using the changeset viewer.