{"action":"created","issue":{"url":"https://api.github.com/repos/unclebob/fitnesse/issues/644","labels_url":"https://api.github.com/repos/unclebob/fitnesse/issues/644/labels{/name}","comments_url":"https://api.github.com/repos/unclebob/fitnesse/issues/644/comments","events_url":"https://api.github.com/repos/unclebob/fitnesse/issues/644/events","html_url":"https://github.com/unclebob/fitnesse/pull/644","id":58383778,"number":644,"title":"Expose table of symbols to TableTable fixtures","user":{"login":"jplambert","id":10744293,"avatar_url":"https://avatars.githubusercontent.com/u/10744293?v=3","gravatar_id":"","url":"https://api.github.com/users/jplambert","html_url":"https://github.com/jplambert","followers_url":"https://api.github.com/users/jplambert/followers","following_url":"https://api.github.com/users/jplambert/following{/other_user}","gists_url":"https://api.github.com/users/jplambert/gists{/gist_id}","starred_url":"https://api.github.com/users/jplambert/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jplambert/subscriptions","organizations_url":"https://api.github.com/users/jplambert/orgs","repos_url":"https://api.github.com/users/jplambert/repos","events_url":"https://api.github.com/users/jplambert/events{/privacy}","received_events_url":"https://api.github.com/users/jplambert/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/unclebob/fitnesse/milestones/11","html_url":"https://github.com/unclebob/fitnesse/milestones/Next%20release","labels_url":"https://api.github.com/repos/unclebob/fitnesse/milestones/11/labels","id":1000874,"number":11,"title":"Next release","description":"","creator":{"login":"amolenaar","id":96249,"avatar_url":"https://avatars.githubusercontent.com/u/96249?v=3","gravatar_id":"","url":"https://api.github.com/users/amolenaar","html_url":"https://github.com/amolenaar","followers_url":"https://api.github.com/users/amolenaar/followers","following_url":"https://api.github.com/users/amolenaar/following{/other_user}","gists_url":"https://api.github.com/users/amolenaar/gists{/gist_id}","starred_url":"https://api.github.com/users/amolenaar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amolenaar/subscriptions","organizations_url":"https://api.github.com/users/amolenaar/orgs","repos_url":"https://api.github.com/users/amolenaar/repos","events_url":"https://api.github.com/users/amolenaar/events{/privacy}","received_events_url":"https://api.github.com/users/amolenaar/received_events","type":"User","site_admin":false},"open_issues":4,"closed_issues":12,"state":"open","created_at":"2015-03-01T20:38:40Z","updated_at":"2015-03-18T08:26:07Z","due_on":null,"closed_at":null},"comments":13,"created_at":"2015-02-20T17:26:10Z","updated_at":"2015-03-18T08:52:04Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/unclebob/fitnesse/pulls/644","html_url":"https://github.com/unclebob/fitnesse/pull/644","diff_url":"https://github.com/unclebob/fitnesse/pull/644.diff","patch_url":"https://github.com/unclebob/fitnesse/pull/644.patch"},"body":"TableTable fixtures can have access to the Slim execution context if they implement StatementExecutorConsumer. However this does not allow them to resolve symbols, making this an unsuitable approach. By adding 'getSymbol' on StatementExecutorInterface, this becomes possible.\r\n\r\nThis is to follow up issues such as FitNesse's issue #525 or RestFixture's issue 52 https://github.com/smartrics/RestFixture/issues/52"},"comment":{"url":"https://api.github.com/repos/unclebob/fitnesse/issues/comments/82825173","html_url":"https://github.com/unclebob/fitnesse/pull/644#issuecomment-82825173","issue_url":"https://api.github.com/repos/unclebob/fitnesse/issues/644","id":82825173,"user":{"login":"jplambert","id":10744293,"avatar_url":"https://avatars.githubusercontent.com/u/10744293?v=3","gravatar_id":"","url":"https://api.github.com/users/jplambert","html_url":"https://github.com/jplambert","followers_url":"https://api.github.com/users/jplambert/followers","following_url":"https://api.github.com/users/jplambert/following{/other_user}","gists_url":"https://api.github.com/users/jplambert/gists{/gist_id}","starred_url":"https://api.github.com/users/jplambert/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jplambert/subscriptions","organizations_url":"https://api.github.com/users/jplambert/orgs","repos_url":"https://api.github.com/users/jplambert/repos","events_url":"https://api.github.com/users/jplambert/events{/privacy}","received_events_url":"https://api.github.com/users/jplambert/received_events","type":"User","site_admin":false},"created_at":"2015-03-18T08:52:04Z","updated_at":"2015-03-18T08:52:04Z","body":"Well, I have removed suspicious cases from the FitNesse tests provided in the branch.\r\n\r\nBut this won't work:\r\n\r\n|script|test slim|\r\n|$X=|echo int|99|\r\n\r\n|table: Table Table Inc First Col |\r\n|$X|$X=|\r\n|$X|$X=|\r\n\r\n|script|test slim|$X|\r\n|check|return Constructor Arg|101|\r\n\r\nBecause $X is replaced by FitNesse by 99. On the SUT, the Slim code will contain \"99\" not \"$X\". So as a result \"100\" will be assigned twice to $X instead of incrementing it twice, resulting in \"101\".\r\n\r\nIn that specific case, the work-around would be to make sure to use new variables, so that FitNesse won't replace them. Still, the semantic is not right..."}}